我的Tj_FeeMsgPermon 表中有areaname ,pathname ,path ,msgnum,countmonth,note
我在jxtsms.dbo.Sms_WaitSendLog20080503bak 表中指能选出areaname ,pathname ,path ,msgnum,其他的两个个countmonth 我希望能传一个@seldate,note 默认为null 我应该怎么做
我在jxtsms.dbo.Sms_WaitSendLog20080503bak 表中指能选出areaname ,pathname ,path ,msgnum,其他的两个个countmonth 我希望能传一个@seldate,note 默认为null 我应该怎么做
其次,你group by语句后有个列a.sysflag,没有在select里面出现,第一个错误被抛出。
另,你group by后加null排序,没有意义
insert Tj_FeeMsgPermon
select b.areaname,c.pathname, a.path,count(*),'0',''
from jxtsms.dbo.Sms_WaitSendLog20080503bak a,jxt_area b,dbo.msg_path c
消息 164,级别 15,状态 1,第 1 行
每个 GROUP BY 表达式必须至少包含一个不是外部引用的列。
答:group by 后不能有null消息 213,级别 16,状态 1,第 1 行
插入错误: 列名或所提供值的数目与表定义不匹配。
请问这个该怎么解决。
答:b.areaname,c.pathname, a.path,count(*) 4个字段的类型与数目必须与表 tj_feemsgpermon的字段数与类型相同
select b.areaname,c.pathname, a.path,count(*)
from jxtsms.dbo.Sms_WaitSendLog20080503bak a,jxt_area b,dbo.msg_path c
where a.path in('71','72','74','75','36','39')
and left(a.sysflag,4) in('1102','1103','1104','1105','1106','1107','1201','1202') and left(a.sysflag,4)=b.areaid and a.path=c.path
group by a.path,left(a.sysflag,4),b.areaname,c.pathname
select b.areaname,c.pathname, a.path,count(*)
from jxtsms.dbo.Sms_WaitSendLog20080503bak a,jxt_area b,dbo.msg_path c
where a.path in('71','72','74','75','36','39')
and left(a.sysflag,4) in('1102','1103','1104','1105','1106','1107','1201','1202') and left(a.sysflag,4)=b.areaid and a.path=c.path
group by a.path,left(a.sysflag,4),b.areaname,c.pathname