取表中字段kl的第一个字符,分组统计
SELECT SUBSTRING(kl,1,1),count(*) as cnt FROM bmk WHERE xzqhdm='0801' GROUP BY SUBSTRING(kl,1,1) 1、里面的SUBSTRING(kl,1,1)怎样换成别名kdy
2、用一个语句能同时显示出记录总条数吗?如下效果(10是三个数的和,即记录总数): 10
1 3
2 2
3 5
SELECT SUBSTRING(kl,1,1),count(*) as cnt FROM bmk WHERE xzqhdm='0801' GROUP BY SUBSTRING(kl,1,1) 1、里面的SUBSTRING(kl,1,1)怎样换成别名kdy
2、用一个语句能同时显示出记录总条数吗?如下效果(10是三个数的和,即记录总数): 10
1 3
2 2
3 5
select SUBSTRING(kl,1,1) as kdy,count(*) as cnt FROM bmk WHERE xzqhdm='0801' GROUP BY SUBSTRING(kl,1,1)
union all
select '' , count(*) from bmk where xzqhdm='0801'
SELECT lie,SUBSTRING(kl,1,1) as kdy,count(*) as cnt FROM bmk ...GROUP BYlie, SUBSTRING(kl,1,1)
这种情况好像不行?
select lie, SUBSTRING(kl,1,1) as kdy,count(*) as cnt FROM bmk WHERE xzqhdm='0801' GROUP BY lie, SUBSTRING(kl,1,1)
union all
select '' , count(*) from bmk where xzqhdm='0801'
怎么不行了?提示什么?
使用 UNION、INTERSECT 或 EXCEPT 运算符合并的所有查询必须在其目标列表中有相同数目的表达式。
union all
select '','' , count(*) from bmk where xzqhdm='0801'