gpt4 book ai didi

SQL,试图找出哪些行有多个条目

转载 作者:行者123 更新时间:2023-12-04 19:14:57 24 4
gpt4 key购买 nike

我在学校系统工作,担任数据人员,在我需要发送给州的最新报告中,我需要发送一些有关学生参加考试的数据。很简单。

问题源于以下事实:当教师或管理人员输入有关具有多种特殊需求的学生的数据时,他们有时会正确填写,即说有多种残疾,有时他们会针对每种特殊需求单独输入。例如,一名学生可能有学习障碍和情感障碍,管理员会输入两项,而不是一项。

我的查询很长,所以我不会打扰整个事情,需要这样的东西:

select 

stuff
,morestuff
,CASE
When [**a student is in the list multiple times**]
Then '**Multiple Disabilities**'
When '01'
Then 'Blind'

等等。

在我看来,这似乎很容易,但当我尝试将其提交到代码中时,它就分崩离析了。

最佳答案

这对于任何 RDBMS 都应该是非常通用的。这假设有一个名为“disabilityname”的列,它包含您的值 01,并假设有一个 studentid 列。

如果一个学生在子查询COUNT(*)中出现多次,则返回Multiple Disabilities,否则返回disabilityname列假设它只有一个值。

SELECT
stuff,
morestuff,
CASE
WHEN cnt.numdisabilities > 1 THEN 'Multiple Disabilities'
ELSE disabilityname
END as disabilityname
FROM
tbl JOIN (
SELECT studentid, COUNT(*) AS numdisabilities FROM tbl GROUP BY studentid
) cnt ON tbl.studentid = cnt.studentid

关于SQL,试图找出哪些行有多个条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7903371/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com