search_value.sql
SET @SearchString = 'my_search_value';
SET @DatabaseName = 'my_database';
SET @SQL = CONCAT('
SELECT CONCAT(TABLE_SCHEMA, ".", TABLE_NAME, ".", COLUMN_NAME) AS Location,
(SELECT COUNT(*)
FROM `', @DatabaseName, '`.`', TABLE_NAME, '`
WHERE `', COLUMN_NAME, '` LIKE CONCAT("%", "', @SearchString, '", "%")
) AS Occurrences
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = "', @DatabaseName, '"
AND DATA_TYPE IN ("char", "varchar", "text", "tinytext", "mediumtext", "longtext")
HAVING Occurrences > 0
ORDER BY Occurrences DESC
');
PREPARE stmt FROM @SQL;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
10.01.2025 | Mathias Grab