SQL Server,表的结果作为“列”或“COUNT(列)”取决于参数?
这是我编写的 T-SQL 代码,我想象它可以工作但没有工作:
DECLARE @Local nvarchar(20)
SET @Local = 'Yes'
SELECT
(CASE WHEN @Local = 'Yes' THEN ID ELSE COUNT(ID) END)
FROM myTable
我做错了什么还是有其他方法可以做到这一点?
谢谢。
Here is the T-SQL code that I coded, which I imagined to work but didn't work:
DECLARE @Local nvarchar(20)
SET @Local = 'Yes'
SELECT
(CASE WHEN @Local = 'Yes' THEN ID ELSE COUNT(ID) END)
FROM myTable
Is there something I am doing wrong or is there any other way to do that?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这两个查询根本不同,所以“不”,按照您发布的方式
您可以在一次调用中完成这两个查询
或使用 @@ROWCOUNT
或使用 AdaTheDev 的解决方案
The 2 queries are fundamentally different so "no", in the way you posted
You can do both in one call
Or use @@ROWCOUNT
Or use AdaTheDev's solution