Как быстро сгенерировать инструкцию SELECT для таблицы в DataGrip?
В Microsoft SQL Server Management Studio (SSMS) вы можете щелкнуть правой кнопкой мыши по таблице, а затем перейти к Script Table as
→ SELECT To
, а затем выбрать пункт назначения для сгенерированного script.
Есть ли что-то подобное в DataGrip, или можно каким-то образом создать пользовательскую структуру?
Причина, по которой я нахожу это полезной, заключается в том, что часто обнаруживаю, что я работаю с таблицей с большим количеством столбцов, и я хочу выбрать все, кроме нескольких из них. Поэтому проще просто сгенерировать оператор SELECT со всеми явно указанными столбцами, чтобы я мог просто пройти и удалить те, которые мне не нужны.
В настоящее время моим обходным решением в DataGrip является щелчок правой кнопкой мыши по таблице, затем выберите Copy DDL
. Это генерирует оператор CREATE TABLE, в котором перечислены все столбцы, но также включает определения столбцов. Поэтому я должен сделать регулярное выражение, заменить или запустить макрос, чтобы избавиться от дополнительной информации, что является видом боли. У кого-нибудь есть лучшее решение?
Ответы
Ответ 1
В DataGrip, как и другие встроенные IDE, все связано с редактированием исходного кода. Таким образом, это может быть достигнуто следующим образом:
- Открыть консоль
- Начните вводить
sel
, вы получите всплывающее окно завершения (если нет, нажмите Ctrl+Space
)
- Выберите
sel
здесь, который является live-template для оператора select
- Выбирается оператор запроса, запрашивающий имя таблицы и список столбцов
![введите описание изображения здесь]()
- Выберите желаемую таблицу после завершения, в качестве списка столбцов укажите
*
- Затем нажмите
Alt+Enter
на звездочке и выберите Expand column list
![введите описание изображения здесь]()
Я предлагаю вам просмотреть https://www.jetbrains.com/datagrip/features/
Ответ 2
В DataGrip 2018.3 вы можете использовать постфиксное завершение. Это гибкий способ получить необходимые запросы.
Попробуйте набрать
SELECT %table_name%.from
SELECT %table_name%.afrom
SELECT %table_name%.join
И это будет расширено до необходимых запросов. В случае from
завершением вы сможете писать столбцы.
Это делает написание SQL более логичным: сначала вы указываете таблицу, а затем столбцы.
Смотрите GIF: ![enter image description here]()