Есть ли сценарий/процедура/функция, которая может генерировать инструкцию CREATE TABLE из произвольного SQL-запроса?
При построении процедур я хотел бы иметь быстрый способ создания временной таблицы, а не просматривать определения всех таблиц, на которые есть ссылки в запросе.
Простой пример:
SELECT p.pat_id, pat_name,
enc_id, admsn_time, disch_time
FROM patient p
INNER JOIN encounter e ON p.pat_id=e.pat_id
WHERE admsn_time >= '01/01/2014'
Будет генерировать (определение данных столбцов извлекается из системной таблицы):
-- randomly-generated table name
CREATE TABLE #random_name (
PAT_ID VARCHAR(18) NOT NULL,
PAT_NAME VARCHAR(200),
ENC_ID NUMERIC(18,0) NOT NULL,
ADMSN_TIME DATE,
DISCH_TIME DATE
)
Рабочий процесс ССМС:
- выделить текст
- щелкните правой кнопкой мыши, выберите
Generate CREATE TABLE statement
(вызывается функция/скрипт/процедура; результат помещается в буфер обмена) - поместите курсор в нужное место
- вставить