❶ sql语句 查询时返回的表需要多返回两个统计了数量的列
select name,sum(case when question='Q1' then 1 else 0 end) as NumOfQ1,
sum(case when question='Q1' and step='S1' then 1 else 0 end) as NumOfQ1_S1
from table_name
group by name
;
❷ SQL多值匹配问题
没办法一句话写出来,只能定义一个函数,在函数中计算两个字段的匹配度(因为是函数,你怎么写都可以)。然后在选择的时候做个Max或order by。
❸ 求SQL查询语句,可以实现返回多条记录!
想从表里面取15条记录是吧?
还要不要其他什么特殊要求?
select top <另一字段>(值为15) * from test order by id desc
想当然写的!没有试过!
❹ sql 查询结果为多列,都是代码,想返回各列代码对应的值,怎么做
方法一:
select a.编号,b.重量单位,c.数量单位,d.国家名称,e.类别名称 from a,b,c,d,e
where a.编号 = '002' and a.重量代码=b.重量代码 and a.数量代码=c.数量代码 and a.数量代码=d.数量代码 and a.数量代码=e.数量代码
方法二:select 编号,
(select 重量单位 from b where b.重量代码=abm.重量代码),
(select 数量单位 from c where c.数量代码=abm.数量代码),
(select 国家名称 from d where d.国家代码=abm.国家代码),
(select 类别名称 from e where e.类别代码=abm.类别代码)
from a abm
where abm.编号 = '002'
方法三:编写sql函数,该函数以表a的重量代码,数量代码,国家代码,类别代码字段为参数(只选择一个),求得相应参数对应的b、c、d、e表中的名称。
然后就比较简单了:
select 编号,自定义函数1(重量代码),自定义函数2(数量代码),自定义函数3(国家代码),自定义函数4(类别代码) from a where 编号 = '002'
这样看起来就比较清晰!
❺ SQL内连接只返回匹配的列,请解释!举例!
表A:
uName
张三
李四
王五
表B:
uName
张三
李四
赵六
内联接
Select a.uName,b.uName from A INNER JOIN B ON a.uName=b.uName
返回:
uName uName
张三 张三
李四 李四
不包括A表中的"王五"所在的行 和B表中的"赵六"所在的行
❻ sql如何查询一个字段多种状态值,并且返回16种结果集
直接
select 状态,count(*) as 数量 from 订单表 group by 状态
如果,你想把状态从数字转成中文,那就加一个状态表,或者写case when
❼ sql语句,如何在select里返回多表查询的所有列
SELECTb.z,b.x,a.z,a.x
FROM(SELECT班次ASz,SUM(用料量)ASx
FROMbASb_1
GROUPBY班次)ASbINNERJOIN
(SELECT班次ASz,SUM(产量)ASx
FROMaASa_1
GROUPBY班次)ASaONb.z=a.z
----实际测试通过
测试结果
1 77 1 44
2 99 2 66
❽ sql 怎么通过多个条件连接2张表
实现的方法和详细的操作步骤如下:
1、第一步,构建两个表,然后分别插入数据,如下图所示,然后进入下一步。
❾ SQL中多值匹配多值,并按匹配个数排序。
这道题不难,做出的结果是
name
B
A
C
代码如下:
selecta.namefromAa,Bbwherea.test1=b.test2GROUPBYa.nameorderbyCOUNT(a.name)desc
看看是不是你要的吧!
❿ 多条sql语句同时执行,返回的数据源问题
应该没问题。
例如
string cmd = "select * from table1;select * from table2;select * from table3";
System.Data.SqlClient.SqlDataAdapter da = new System.Data.SqlClient.SqlDataAdapter(cmd);
System.Data.DataSet ds = new DataSet();
da.Fill(ds);
datalist1.datasource = ds.tables[0];
datalist2.datasource = ds.tables[1];
datalist3.datasource = ds.tables[2];