Vika7
@Vika7
вебист

SELECT * FROM где таблица like 'i'?

Ребята, помогите с SQL запросом:
нужно сделать выборку всего из таблицы LIKE '%%'

таблицу нашла так:
SELECT * FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_NAME LIKE '%i%'


пробую еще так, но все равно только название таблицы дает
WITH NewScores AS (
    SELECT table_name FROM INFORMATION_SCHEMA.TABLES
    WHERE TABLE_NAME LIKE 'irina'
)
SELECT * from NewScores;
  • Вопрос задан
  • 120 просмотров
Решения вопроса 2
megafax
@megafax
web-программист
Составляйте вручную запрос, автоматически пройтись по всем полям одним оператором LIKE %i% еще и выбрать таблицу - не получится.
Ответ написан
@res2001
Developer, ex-admin
SQL не ограничивается 4 операторами (select, insert, update, delete). Обычно разработчики СУБД добавляют в SQL еще и процедурное расширение, благодаря чему становится возможным писать скрипты со сложной логикой, при этом работать из скрипта с БД. Плохо то, что эти процедурные расширения у каждой СУБД свои и там нет никакой совместимости.
Что бы выполнить вашу задачу нужно написать скрипт в котором вы первым запросом получаете имя таблицы в переменную, потом собираете нужный select с нужным именем таблицы и исполняете его.
Исполнять динамически сгенерированный запрос придется с помощью EXECUTE.
Скрипт можно оформить в хранимую процедуру, но можно выполнять и сам по себе, если это разовая задача.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы