如何在 DataGrip 中为 table 快速生成 SELECT 语句?

How to quickly generate SELECT statement for a table in DataGrip?

在 Microsoft SQL Server Management Studio (SSMS) 中,您可以右键单击 table,然后转到 Script Table as -> SELECT To,然后为生成的脚本选择一个目的地。

DataGrip 中是否有类似的东西,或者可以通过某种方式自定义创建?

我觉得这很有用的原因是因为我经常发现我正在使用一个有很多列的 table,我想要 select 除了其中的几个。因此,让它生成明确列出所有列的 SELECT 语句会更容易,这样我就可以删除不需要的列。

目前,我在 DataGrip 中的解决方法是右键单击 table,然后选择 Copy DDL。这会生成 CREATE TABLE 语句,它列出所有列,但它也包括列定义。所以我必须做一个正则表达式替换或 运行 一个宏来摆脱额外的信息,这是一种痛苦。有没有人有更好的解决方案?

DataGrip 和其他基于 intellij 的 IDE 一样,一切都与源代码编辑有关。这样就可以实现:

  • 打开控制台
  • 开始输入 sel,您将看到完成弹出窗口(如果没有,请点击 Ctrl+Space
  • Select sel 这里是 select 语句
  • 的实时模板 将生成
  • Select 语句,要求 table 名称和列列表
  • Select 希望 table 完成,因为列列表提供 *
  • 然后点击星号上的 Alt+Enter 和 select Expand column list

建议你浏览一下https://www.jetbrains.com/datagrip/features/

在 DataGrip 2018.3 中,您可以使用 后缀补全。这是获取所需查询的灵活方式。

尝试输入

SELECT %table_name%.from
SELECT %table_name%.afrom
SELECT %table_name%.join

这将扩展到所需的查询。在 from 完成的情况下,您将能够编写专栏。

这使得编写 SQL 更符合逻辑:首先,您指向 table,然后是列。

看动图: