请教SQL高手,以下数据分层语句怎么写?
发布网友
发布时间:2022-05-03 20:08
我来回答
共4个回答
热心网友
时间:2022-05-03 21:37
我的方案有问题?
以下写法主要是基于oracle的分析函数 row_number(),如需要具体了解,请百度,
当然sql server 2008以上也是有的,自己研究
如下语句能够按你的意思能够排出A,B,C,D,E,F,但是名字不能重命,最好找一个唯一索引来排,假设有一个学号 uid
select class,name,chr(ascii('A')+trunc((rownumber-1)/10)),rownumber from (
select row_number() over(partition by class order by name) as rownumber,a.class,a.name from student a
) c
如下是更新语句
update student b
set b.lei =
(select chr(ascii('A')+trunc((rownumber-1)/10)),rownumber from (
select row_number() over(partition by class order by name) as rownumber,a.uid,a.class,a.name from student a
) c
where c.class = b.class and c.uid = b.uid
)
热心网友
时间:2022-05-03 22:55
你的数据库版本是那个版本的
热心网友
时间:2022-05-04 00:30
什么数据库 用分页啊追问MySQL 不过 很多语句和SQLsever通用。 如何分页??
追答先根据班级分组 然后再按照你那个关系赋值.
热心网友
时间:2022-05-04 02:21
lei列的值赋值后是固定不变的吗追问固定不变