select a.rkno,a.packageno,a.type as hi_no,a.cust_no,b.lotno,count(b.lotno)mount,
convert(varchar(10),a.date,120)date from rk_log as a inner join
dfl_detail as b on a.packageno = b.packageno where
a.rkno like '%%' and a.cust_no like '%310F63TS1A%' and b.lotno like '%%'
and a.date >= '2014-12-01' and a.date <= '2014-12-11'
group by a.rkno,a.packageno,a.type,a.cust_no,b.lotno,convert(varchar(10),a.date,120)
order by date asc什么意思?
convert(varchar(10),a.date,120)date from rk_log as a inner join
dfl_detail as b on a.packageno = b.packageno where
a.rkno like '%%' and a.cust_no like '%310F63TS1A%' and b.lotno like '%%'
and a.date >= '2014-12-01' and a.date <= '2014-12-11'
group by a.rkno,a.packageno,a.type,a.cust_no,b.lotno,convert(varchar(10),a.date,120)
order by date asc什么意思?
解决方案 »
- 难度增加了,继续求SQL语句
- 类似论坛消息表数据提取的SQL写法!
- 关于select与join语句,大家帮个忙
- ■请问如何把一个数据库中所有存储过程,视图,自定义函数中的字符串abc替换成bcd
- 各位大虾HELP ME!!SQL SERVER 7.0同步复制出错。
- 改变列宽的sql语句是什么
- 关于字段类型!!!
- 关于日期计算的的错误!请关注!!
- 求救!查询问题。在线等待。
- 请教各位高手,偶在2000 server里装了MDAC_TYP.exe 2.8,如何卸载它??因为想装 MDAC_TYP.exe 2.5版的。N根鸡毛!
- 将datetime 列更新为time列应该怎么做?
- 数据库统计天数问题?
查询的条件可能为空,所以用like查询。
改为
a.cust_no like '%310F63TS1A%'
试试
convert(varchar(10),a.date,120)date from rk_log as a left join
dfl_detail as b on a.packageno = b.packageno where
a.cust_no = '310F63TS1A'
and a.date >= '2014-12-01' and a.date <= '2014-12-11'
group by a.rkno,a.packageno,a.type,a.cust_no,b.lotno,convert(varchar(10),a.date,120)
order by date asc
order by date asc
1)明确你的数据定义,是否可换为:
a.cust_no like '310F63TS1A%' and b.lotno like '%' and a.rkno like '%'
或
a.cust_no like '310F63TS1A%' and b.lotno like (case when isnull(XXX,'')='' then '%' else 'XXX%' end )
and a.rkno like (case when isnull(XXX,'')='' then '%' else 'XXX%' end )
2)一般数据处理,是不需要order by date asc的
3)看执行计划,想办法利用上索引。
select a.rkno,a.packageno,a.type,a.cust_no,b.lotno,count(b.lotno)mount from rk_log as a left join
dfl_detail as b on a.packageno = b.packageno where
a.cust_no = '310F63TS1A'
and convert(varchar(10),a.date,120) >= '2014-12-01' and convert(varchar(10),a.date,120) <= '2014-12-11'
group by a.rkno,a.packageno,a.type,a.cust_no,b.lotno,convert(varchar(10),a.date,120)
order by convert(varchar(10),a.date,120) asc
a.date between '2014-12-01 00:00:00.000' and '2014-12-11 23:59:59.997'