很简单的问题,咨询大家

daqi2010 2010-01-13 04:48:30
declare @sql2 nvarchar(4000)
DECLARE @asql nvarchar(500)
--DECLARE @msql varchar(500)
declare @c1 int,@c2 dec(18,2)
select @c1=0,@c2=0

set @sql2='where 1=1'
set @asql=N'select @c1=count(chance_id),@c2=sum(chance_money) from chance A ' +@sql2+' '

exec sp_executesql @asql,N'@c1 int output,@c2 dec(18,2) output',@c1 output,@c2 output;

select ltrim(@c1)+'|'+ltrim(@c2)
如果表CHANCE查询的数据为空。则输出为空。我用
count(isnull(chance_id),0)为什么不对了。
...全文
78 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
daqi2010 2010-01-13
  • 打赏
  • 举报
回复
谢谢大家,哪下面这句如何写才是正确的
set @asql=N'select @c1=count(chance_id),@c2=sum(chance_money) from chance A ' +@sql2+' '
SQL77 2010-01-13
  • 打赏
  • 举报
回复
CREATE TABLE TB(ID INT)
SELECT ISNULL((SELECT COUNT(*) FROM TB),0)

--DROP TABLE TB

-----------
0

(所影响的行数为 1 行)
--小F-- 2010-01-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 sql77 的回复:]
SQL codeSELECTISNULL((SELECTCOUNT(*)FROM TB),0)

没你那样的语法,

SQL codeisnull(count(chance_id),0)
[/Quote]
UP
smntbk 2010-01-13
  • 打赏
  • 举报
回复
isnull(chance_id,0)
SQL77 2010-01-13
  • 打赏
  • 举报
回复
SELECT ISNULL((SELECT COUNT(*) FROM TB),0)


没你那样的语法,

isnull(count(chance_id),0)

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧