sql语句分组查询
⑴ sql如何查询一张表的所有字段并按其中一个字段进行分组
1、创建测试表,
create table test_group_cols(id number, value varchar2(20), remark varchar2(20));
⑵ sql分组查询语句
只是查询出来么?
select store_no 商品,in_code 识别码,quantity 数量,store_no 仓库,supplier_no 供货商 from (表明) where in_date=‘指定的日期’
(⊙﹏⊙)b,你的商品,仓库,供货商应该都是关联了字典表的
⑶ sql分组查询的完整语句
分组查询 group by 主要是对(count,sum,avg,min,max)
例如
表A
a b c
一 1 2
一 1 3
二 2 5
三 7 7
二 9 9
select a,sum(b),sum(c) from A group by a
对分组数据进行限制
select a,sum(b),sum(c) from A group by a having sum(b)>5
⑷ sql语句 分组查询 急用,在线等啊
你可以通过where条件来限制只查询哪条记录。
比如,我要查出nama=1的记录,可以使用sql语句
select
*
from
table1
where
name='1'
如果我要查询name=1或者name=2的记录,可以使用sql语句
select
*
from
table1
where
name='1'
or
name='2'
或者
select
*
from
table1
where
name
in
('1','2')
⑸ sql分组查询
-- SQLSERVER 语句
select c.classname,
(case c.pid when 0 then
(select count(*)from record r1 where r1.cid1 = c.id and r1.status = 0) else
(select count(*) from record r1 where r1.cid2 = c.id and r1.status = 0) end) as '及格',
(case c.pid when 0 then
(select count(*)from record r1 where r1.cid1 = c.id and r1.status = 1) else
(select count(*) from record r1 where r1.cid2 = c.id and r1.status = 1) end) as '良',
(case c.pid when 0 then
(select count(*)from record r1 where r1.cid1 = c.id and r1.status = 2) else
(select count(*) from record r1 where r1.cid2 = c.id and r1.status = 2) end) as '优秀'
from CLASS c
---ORACLE 写法
select c.classname,
(decode(c.cid,0,(select count(*)from record r1 where r1.cid1 = c.id and r1.status= 0),
(select count(*) from record r1 where r1.cid2 = c.id and r1.status= 0)))jige,
(decode(c.cid,0,(select count(*)from record r1 where r1.cid1 = c.id and r1.status= 1),
(select count(*) from record r1 where r1.cid2 = c.id and r1.status= 1)))liang,
(decode(c.cid,0,(select count(*)from record r1 where r1.cid1 = c.id and r1.status= 2),
(select count(*) from record r1 where r1.cid2 = c.id and r1.status= 2)))youxiu
from CLASS c
⑹ SQL语句如何在两张表中分组查询,而只取一条记录
sql语句中,关联查询只取分组的一条记录的方法如下:
select userid,ranking,username from table //查询字段有userid username
where userid+ranking in //where 条件包括userid+ranking in是集合选择关键字
(
select userid+max(ranking) from table // max(ranking)选择ranking列的最大值
group by userid //根据userid分组
)
以上sql中,内层select查出了最大的ranking,根据userid分组,外层查询中选择userid+ranking。
⑺ SQL语句分组查询
是SQL SERVER吗?就是想要怎样把查询结果导出到文本文档是吧?
EXEC master..xp_cmdshell 'BCP "select XLBH,CMBH,SUM(XSJE) from MDFSLSK group by XLBH,CMBH" queryout D:\XXX.TXT -c -T'
好像要在同一行才能正确执行,MDFSLSK表前可能要加上数据库名.用户名. 比如这样:数据库名.DBO.MDFSLSK
-T是使用信任连接 当然可以换成 -U"sa" -P"password",要详细了解就查一下BCP