使用 SSMS 在 where 子句中的每个 id 之前放置逗号

Posted

技术标签:

【中文标题】使用 SSMS 在 where 子句中的每个 id 之前放置逗号【英文标题】:Place commas before each id in a where clause using SSMS 【发布时间】:2019-01-09 09:52:22 【问题描述】:

我想在 mssql 中的以下查询中的 id 之间放置逗号。我从不同的查询中得到了这些可能数千个 id。我现在在 excel 中执行此操作。我将 id 复制到 excel 并使用 '&' 在 id 数字前面粘贴逗号,然后将粘贴复制到 Mssql。在 Mssql 中有没有实用的方法来做到这一点?只需复制 id 并在前面放置逗号? 谢谢。

Select * from Table A where 
id in 
(123
,453
,576
,564
,535
,553
,327
)

【问题讨论】:

您的 SQL 确实有逗号 (,) 是吗。你到底在这里问什么? 如果你从一个excel列中得到它们,你可以在前面有一个逗号的另一列,然后把它带来。此外,在最近版本的管理工作室中,您可以按住 Alt 并拖动光标以选择每个数字前的所有空格,然后只需单击一次逗号键即可在任何地方输入逗号。 如果您只有一个列表,您可以使用 notepad++ 轻松完成此操作。请参阅此问题/答案:***.com/questions/42465806/… 【参考方案1】:

如果您将ID复制到SSMS并且它们前面没有逗号,您可以按住Alt&Shift然后按Down光标(或者如果您有很多,请在最后一个数字之前单击)开始插入之前整个列。如果您再按一次comma,它将在每行之前添加一个逗号。

【讨论】:

以上是关于使用 SSMS 在 where 子句中的每个 id 之前放置逗号的主要内容,如果未能解决你的问题,请参考以下文章

嵌套选择中的 WHERE 子句

每个总和都带有 WHERE 子句的 SUM 函数?

当 where 子句列中没有聚集索引时,并行更新导致死锁

在oracle中where 子句和having子句中的区别

where 子句中的列“id”不明确

Oracle - where 子句中的案例