以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请教SQL语句写法 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=53286) |
-- 作者:baoxyang -- 发布时间:2014/7/4 10:30:00 -- 请教SQL语句写法 表一:托运单据 现在要用COUNT统计异常信息的托单号的记录数并赋值给托运单据相应的异常次数 update 托运单据 a set a.异常次数 =(select b.counts from (select 托单号,count(*) counts from 异常信息 where 销单否 = \'否\' group by 托单号 ) b where a.托运单号 = b.托单号 and a.销单否 = \'否\') 这个语句有错,请帮忙应如何写?谢了!! |
-- 作者:有点甜 -- 发布时间:2014/7/4 10:34:00 -- 呃,很简单,参考正确例子
update A set 列名 = B.列名 from (select 编码,count(*)as 列名1,SUM(CASE WHEN 条件 THEN 1 ELSE 0 END) AS 列名 from c表 group by 编码) as B where A.编号 = B.编号 |
-- 作者:Bin -- 发布时间:2014/7/4 10:35:00 -- ... [此贴子已经被作者于2014-7-4 10:42:58编辑过]
|
-- 作者:baoxyang -- 发布时间:2014/7/4 10:50:00 -- 消息 102,级别 15,状态 1,第 1 行 \'a\' 附近有语法错误。 消息 156,级别 15,状态 1,第 1 行 关键字 \'where\' 附近有语法错误。 |
-- 作者:有点甜 -- 发布时间:2014/7/4 10:54:00 -- 请贴出你的代码
update 托运单据 a set 异常次数 = b.counts from (Select 托单号,count(*) counts from 异常信息 where 销单否 = \'否\' group by 托单号 ) b where a.托运单号 = b.托单号 and a.销单否 = \'否\' |
-- 作者:baoxyang -- 发布时间:2014/7/4 10:56:00 -- 以下是引用有点甜在2014-7-4 10:54:00的发言:
请贴出你的代码
update 托运单据 a set 异常次数 = b.counts from (Select 托单号,count(*) counts from 异常信息 where 销单否 = \'否\' group by 托单号 ) b where a.托运单号 = b.托单号 and a.销单否 = \'否\' 上述代码提示如下错误 消息 102,级别 15,状态 1,第 1 行 |
-- 作者:jijianjsj -- 发布时间:2014/7/4 11:25:00 -- update 托运单据 set 异常次数 = b.counts from 托运单据 left join (Select 托单号,count(*) counts from 异常信息 where 销单否 = \'否\' group by 托单号 ) b on 托运单据 .托运单号 = b.托单号 where 托运单据 .销单否 = \'否\' [此贴子已经被作者于2014-7-4 11:26:49编辑过]
|
-- 作者:baoxyang -- 发布时间:2014/7/4 21:36:00 -- 以下是引用jijianjsj在2014-7-4 11:25:00的发言:
update 托运单据 set 异常次数 = b.counts from 托运单据 left join (Select 托单号,count(*) counts from 异常信息 where 销单否 = \'否\' group by 托单号 ) b on 托运单据 .托运单号 = b.托单号 where 托运单据 .销单否 = \'否\' [此贴子已经被作者于2014-7-4 11:26:49编辑过] OK,多谢指点! |