我已经写了这个sql语句来获取人员ID,姓名和价格,例如飞机票。

SELECT Person.PID, Person.Name, Preis
FROM table.flug Flug
INNER JOIN table.flughafen Flughafen ON zielflughafen = FHID
INNER JOIN table.bucht Buchungen ON Flug.FID = Buchungen.FID
INNER JOIN table.person Person ON Buchungen.PID = Person.PID
WHERE Flug.FID = '10' ORDER BY Preis ASC;


我的输出是正确的,但只能是带有min(Preis)的行。

如果我相应地更改代码,则会收到错误消息...

SELECT Person.PID, Person.Name, min(Preis)
FROM table.flug Flug ...


作为输出,我需要一行:PID,名称和价格,而价格是min(Preis)。

最佳答案

由于已经在对行进行排序,因此只需添加一个limit子句:

SELECT     Person.PID, Person.Name, Preis
FROM       table.flug Flug
INNER JOIN table.flughafen Flughafen ON zielflughafen = FHID
INNER JOIN table.bucht Buchungen ON Flug.FID = Buchungen.FID
INNER JOIN table.person Person ON Buchungen.PID = Person.PID
WHERE      Flug.FID = '10'
ORDER BY   Preis ASC
LIMIT      1

07-25 20:48