gpt4 book ai didi

mysql - 组合查询中的记录

转载 作者:行者123 更新时间:2023-11-29 06:17:12 27 4
gpt4 key购买 nike

我必须编写一个在两行之间搜索的查询,但只会匹配两行中的值。我要搜索的数据是一个表,其中保存名字和姓氏是单独的行。不要告诉我应该将它们存储在同一行中。我不能,这就是需要说的。我需要做的是有一个组合记录的查询,以便我可以在单独的列中搜索它们。

数据格式如下:

StudentValues
ID
StudentID
FieldID
Response

fieldid 为 1 时会给出响应列中的名字,fieldid 为 2 时会给出响应列中的姓氏,而 StudentID 将用于对记录进行分组。

我已经能够构建以下 SQL,但 where 子句现在失败

    SELECT StudentId, MIN(CASE WHEN FieldId = 1 THEN Response ELSE NULL END) AS fname, MIN(CASE WHEN FieldId = 2 THEN Response ELSE NULL END) AS lname
FROM sms_studentvalues
WHERE fname = 'Some Value'
AND lname = 'Some Value'
GROUP BY studentid

最佳答案

已更新以下评论

SELECT *
FROM (
SELECT StudentId,
MIN(CASE WHEN FieldId = 1 THEN Response ELSE NULL END) AS Name,
MIN(CASE WHEN FieldId = 2 THEN Response ELSE NULL END) AS LastName
FROM YourTable
GROUP BY StudentId) AS StudentsNames
WHERE Name = 'Some Value' AND LastName = 'Some Value'

关于mysql - 组合查询中的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5781156/

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