您的位置:首页 > 数据库

sql查询练习

2011-11-04 15:43 169 查看
1、有以表结构如下

id goodsid scount type

6 3 40 out

5 2 30 in

4 1 45 out

3 3 20 out

2 2 20 in

1 1 10 in

要查询到如下结果
goodsid 进货 出库 库存

解:

select goodsid,sum(a.sin) as aa,sum(a.sout) as bb ,sum(a.sin)-sum(a.sout)
from
(select id,goodsid, case type when 'in' then scount else '0' end as sin,case type when 'out' then scount else '0' end as sout
from test2) as a
group by a.goodsid

2、有表结构如下

name result type

张三 95 语文
张三 85 数学
张三 87 英语
李四 67 数学
李四 85 英语
王五 86 语文
王五 78 数学

要求查询出所有学科成绩都再80以上的学生名单

解:

select distinct(name)
from test3
where name not in(
select NAME
from test3
where result<80
)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: