Найти слово в столбце во всех таблицах базы данных MySQL
Этот запрос будет проходить по всем таблицам в текущей базе данных и искать слово Hello в столбце name. Результатом запроса будет список названий таблиц, в которых найдено искомое слово.
SET @search_value = 'Hello';
SET @query = '';
SELECT GROUP_CONCAT(
DISTINCT CONCAT(
'SELECT ''', table_name, ''' AS table_name FROM `', table_name,
'` WHERE name LIKE ''%', @search_value, '%'' '
)
SEPARATOR ' UNION '
) INTO @query
FROM information_schema.columns
WHERE column_name = 'name' AND table_schema = 'название_базы_данных'; -- table_schema = DATABASE()
PREPARE statement FROM @query;
EXECUTE statement;
DEALLOCATE PREPARE statement; Предыдущая заметка
Как посмотреть структуру таблицыСледующая заметка
VirtualBox: недостаточно прав для просмотра содержимого объекта