Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как вывести из таьлицы те колонки, которые являются строками второй таблицы?

Maksim Litevko Ученик (107), на голосовании 1 год назад
Есть таблица 1, которая содержит колонки (Имя, Фамилия, Возрост), есть 2 таблица, она содержит только одну колонку, в которой есть строки Имя, Фамилия. Нужно вывести из 1 таблицы те колонки, которые являются строками 2 таблицы, то есть Имя, Фамилия.
Я понимаю, что есть select Имя, Фамилия from таблица 1. Но нужно, чтобы это автоматически выводилось
Голосование за лучший ответ
IRQ Оракул (53026) 1 год назад
А мысль что база неправильно спроектирована в голову не приходила? Или это наследие некое?
Maksim LitevkoУченик (107) 1 год назад
Мне самому не нравится, но такое задание.
Нужно вывести колонки из заданной таблицы, которые имеют тип данных char, varchar.
Я получаю таблицу с этими колонками из SYSCAT.COLUMNS
IRQОракул (53026) 1 год назад
Задание прямо именно такое?
Maksim Litevko Ученик (107) IRQ, нет, не такое. Нужно написать процедуру, которая будет выводить все строки колонок, которые принимают тип данных char, varchar. Как я понял, эта инфа содержится в syscat.columns. Сейчас я пытаюсь понять, как вывести колонки из таблицы, которые являются строками syscat.columns. Как можно вывести колонки определенного типа данных?
Александр Искусственный Интеллект (301602) 1 год назад
приведи фрагменты этих таблиц?
Maksim LitevkoУченик (107) 1 год назад
Вот такой запрос, чтобы получить колонки нужного типа данных из syscat.columns:
 select COLNAME, TYPENAME, LENGTH from syscat.columns where TABNAME = 'EMPLOYEE' and TYPENAME in ('CHARACTER', 'VARCHAR') 
Вот что получаю:То есть все эти строки являются колонками таблицы Employee. Мне нужно их вывести в один столбик.
 select * from employee 
Maksim LitevkoУченик (107) 1 год назад
Просто, может, я пошёл по неправильному пути.
Может, есть способ напрямую обратиться к таблице и вывести все колонки нужного типа данных?
Похожие вопросы