快速从 * 通配符到几个特定的​​列

Quickly going from * wild card to a few specific columns

假设我在 table 中有 20 列,并且我 运行 手动查询如下:

  SELECT *

  FROM [TABLE]

  WHERE [PRODUCT] LIKE '%KRABBY PADDY%'

查看结果后,我意识到我只需要这些列中的 10 个。有没有一种快速列出您想要的 10 列的方法,比如右键单击通配符并以某种方式选择您想要的列?

右键单击 * 并选择列听起来也不是很快。 您可以使用 SSMS 转到 table,然后拖动 "Columns":

你会得到每一列,然后你可以保留你想要的:

据我所知,您不能完全按照您的要求进行操作,但在 SQL Server Management Studio 中,您可以获得包含 [=] 所有列的 SELECT 语句20=] 通过在对象资源管理器上右键单击 table select 选项:

script table as --> SELECT to --> Clipboard

有了这个 SELECT 就可以很容易地删除 SELECT

上不需要的列

另一个 SSMS 解决方案:

  • 突出显示查询。
  • 右击它,选择"Design Query In Editor"。
  • 查询设计器会自动将 * 扩展为列列表。
  • 当您在顶部面板中勾选和取消选中所需的列时,底部面板中的查询文本将发生变化以匹配。
  • 点击 "OK",它将在编辑器中的旧文本上写入新查询。

我自己没用过这么多(我通常只是打字),但它似乎适用于简单的查询。