永发信息网

关于SQL语句的随机分配问题

答案:2  悬赏:80  手机版
解决时间 2021-07-18 19:27
  • 提问者网友:人傍凄凉立暮秋
  • 2021-07-17 21:17

我想用SQL语句创建一个某高校的录取信息系统,想把那些达到该高校实际录取分数线而没被所填专业录取且专业填写了可调配的同学随机分配到其他未达到额定录取人数的专业。求条SQL语句解决问题!

假设学生信息表为A(考号,姓名,录取专业,同意调剂(0表示同意,1表示不同意)),系别及专业信息表B(专业,系别,招生人数,实际录取人数)。

最佳答案
  • 五星知识达人网友:人间朝暮
  • 2021-07-17 22:25

UPDATe [Ygame].[dbo].[A]
SET
[录取专业] = select 专业 from ( select top 1 专业, NewID() as random from [B] where 招生人数>实际录取人数 order by random) rb
WHERe 录取专业='' and 同意调剂=1


一条语句最多只能做到这种程度了


你的要求不太清晰,上面那条语句不能在分配专业的同时,给分配的专业实际录取人数自动加1,所以不够严谨,要在分配完毕的同时实际录取人数自动加1必须得用存储过程了。


要不你就在程序里面分步弄,一条SQL语句怕是解决不了问题的,给分吧!你太刁难人了

全部回答
  • 1楼网友:笑迎怀羞
  • 2021-07-17 23:56

两张表没有相关联的数据吗 这样的话sql 语句不好写

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯