Вопрос обновлен.
Я хочу получить список новых таблиц, которые empty
или null
в поле description
.(новые таблицы означают с префиксом new_) и все таблицы имеют поле описания.
Определение таблицы:
create table topic (id int, description varchar(255));
create table comment (id int, description varchar(255));
create table author (id int, description varchar(255));
create table new_topic (id int, description varchar(255));
create table new_comment (id int, description varchar(255));
create table new_author (id int, description varchar(255));
Пример данных и описание:
insert into new_topic (id, description) values (1, null);
insert into new_topic (id, description) values (2, 'This is topic description');
insert into new_comment (id, description) values (1, null);
insert into new_comment (id, description) values (2, null);
insert into new_author (id, description) values (1, 'This is casual first author.');
insert into new_author (id, description) values (2, 'This is casual second author.');
Как вы можетеобратите внимание на мой пример, идеальный вывод для моих образцов данных был бы:
table_name:
new_topic
new_comment
Мое реальное решение работает, но мне нужно вручную добавить таблицы, и я делаю много повторений.
select distinct 'new_topic' as table_name
from new_topic where description is null
select distinct 'new_comment' as table_name
from new_comment where description is null
select distinct 'new_author' as table_name
from new_author where description is null
И вывод моего решения выглядит следующим образом:
table_name
new_topic
table_name
new_comment
table_name
Я также создал SELECT, чтобы получить все новые таблицы:
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME LIKE 'new_%' AND TABLE_TYPE = 'BASE TABLE'
Который мог бы стать точкой входа для моегопредыдущий выбор, но я не знаю, как соединить эти два.
Также мое решение доступно на dbfiddle