求一SQL 急急急急急急急急急急急急急急

来源:百度知道 编辑:UC知道 时间:2024/05/20 09:08:33
现在是有5个查询条件(2个textbox(按时间段查询)3个dropdownlist(按城市,游戏,公司查询))用一条SQL语句查询
SQL语句怎么写
我自己写的大家看看有没有问题
select substring(Convert(Varchar(10),CM_MONTH,120),9,10),sum(CM_NUMBER) from TS_CHART_MONTH where substring(Convert(Varchar(10),CM_MONTH,120),9,10)>='" + begin + "'and substring(Convert(Varchar(10),CM_MONTH,120),9,10)<='" + end + "' and CM_CITY like" + "'" + city + "%'" + "and CM_GAME like" + "'" + game + "%'" + "and CM_COMMPANY like" + "'" + commpany + "%' GROUP BY CM_MONTH

select sum(CM_NUMBER) from TS_CHART_MONTH where substring(Convert(Varchar(10),CM_MONTH,120),9,10)>='" + begin + "'and substring(Convert(Varchar(10),CM_MONTH,120),9,10)<='" + end + "' and CM_CITY like" + "'" + city + "%'" + "and CM_GAME like" + "'" + game + "%'" + "and CM_COMMPANY like" + "'" + commpany + "%'

如果只要汇总一个数量的话,不要用GROUP BY CM_MONTH了,直接查询sum(num)就可以了...

楼上的把问题补充一下,条件太模糊了。
给你一个建议,把复杂查询的sql语句做成sql储存过程放在sqlserver上,在程序中只要调用储存过程,这样便于维护~

没错
就是不知道你的表结构是什么
语法是没错的

你确定你的每个条件都有空格分开吧!你的SQL语句我稍微改了一下:
"select substring(Convert(Varchar(10),CM_MONTH,120),9,10),sum(CM_NUMBER)
from TS_CHART_MONTH where substring(Convert(Varchar(10),CM_MONTH,120),9,10)>='" + begin + "'
and substring(Convert(Varchar(10),CM_MONTH,120),9,10)<='" + end + "'