gpt4 book ai didi

mysql - 在单个查询中获取多个结果

转载 作者:行者123 更新时间:2023-11-29 13:01:11 26 4
gpt4 key购买 nike

我需要知道学生 - 学生 ID、名字、姓氏。那些没有在特定礼堂观看过事件的人。我必须按姓氏升序列出这些学生(通过一个查询)。运行查询两次,一次运行显示礼堂“伦敦剧院”的结果,第二次运行显示“布伦特伍德大厅”的结果。

我不知道第一次和第二次运行意味着什么。另请检查以下内容是否适用于首次运行。我正在考虑创建一个 View 并存储第一次运行,并使用“Brentwood Hall”编写相同的查询并将其存储在第二个 View 中。但是,我将如何在同一查询中显示 2 个 View ?

SELECT op.StudentID
, s.FirstName
, s.LastName
FROM auditorium a
JOIN audievent e
ON a.auditoriumID = e.AuditoriumID
JOIN reserver r
ON e.EventID = r.EventID
JOIN OrderProcessor op
ON r.OrderID = op.OrderID
JOIN Student s
ON op.StudentID = s.StudentID
WHERE op.StudentID NOT IN ( SELECT DISTINCT op.StudentID
FROM OrderProcessor op
LEFT
JOIN reserver r
ON op.OrderID = r.OrderID
LEFT
JOIN AudiEvent e
ON r.AuditoriumID = e.AuditoriumID
WHERE e.EventID NOT IN ( SELECT EventID FROM reserver)
)
AND a.AuditoriumName = 'London Theatre'
GROUP
BY op.StudentID;

输出:-

学生 ID 名字 姓氏
ID1 安迪·霍尔
ID2 安迪·霍尔斯
ID3 穆什·彼得斯
ID4加里·希格尔

输入:-

礼堂

AudiID AudiName
Audi01 伦敦剧院
Audi02 布伦特伍德大厅
Audi03县政府

奥迪事件

EventID AudiID
1 奥迪01
2奥迪01
3奥迪01
4奥迪01
5奥迪01
6奥迪01
7奥迪01
8奥迪01
9奥迪01
10奥迪01
11奥迪02
12奥迪02
13奥迪02
14奥迪02
15奥迪02
16奥迪03
17奥迪03
18奥迪03
19奥迪03
20奥迪03

服务器

ReserverID OrderID AudiID EventID
1 1 奥迪01 1
2 1 奥迪01 2
3 2 奥迪01 3
4 2 奥迪01 4
5 2 奥迪02 14
6 3 奥迪02 15
7 3 奥迪02 11
8 4 奥迪03 18
9 4 奥迪03 19
10 4 奥迪03 20

订单处理器

订单 ID 学生 ID
1 ID01
2 ID02
3 ID03
4 ID04

学生

学生 ID 名字 姓氏
ID1 安迪·霍尔
ID2 安迪·霍尔斯
ID3 穆什·彼得斯
ID4加里·希格尔

最佳答案

正如 @wildplasser 提到的,NOT EXISTS 对此来说是完美:

SELECT studentId, student.firstName, student.lastName
FROM Student
WHERE NOT EXISTS (SELECT 1
FROM OrderProcessor
JOIN Reserver
ON Reserver.orderId = OrderProcessor.orderId
JOIN AudiEvent
ON AudiEvent.eventId = Reserver.eventId
JOIN Auditorium
ON Auditorium.audiId = AudiEvent.audiId
AND Auditorium.audiName = 'London Theatre'
WHERE OrderProcessor.studentId = Student.studentId)

(工作 SQL Fiddle example )
为了让没有看过'Brentwood Hall'事件的学生进行必要的修改,留给读者作为练习。

关于mysql - 在单个查询中获取多个结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23321053/

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