-1

我有 2 张桌子

球员

Pnr
Pname
Padress
Pcity

门票

Tnr
Pnr
Date
Costs

我想Ticket Cost从数据库中获取最高玩家的名字Select。我想知道谁Ticket在五月得到了一个。我也想知道谁从来没有得到过Ticket. 我如何获得这些?Pnr是Players的主键,与Tickets中的Pnr相连

我试过了

SELECT MAX(Costs) from Players, Tickets
Where max()
4

2 回答 2

1

我希望我理解正确。尝试以下查询。我认为它仍然会有一些错误,但你可以在这里评论它们,我会尽力纠正它们。

 select top 1 Pname from Players 
    inner join Tickets on Players.Pnr = Tickets.Pnr
    where Date > 1.05.2014 and Date <31.05.2014
    order desc by Tickets.Costs
于 2014-05-20T09:03:58.880 回答
0
  1. 最高票价:

    SELECT P.*,T.Tnr,T.Date,T.cost 
    FROM Players P JOIN 
         Tickets T ON T.Pnr=B.Pnr
    WHERE T.Cost= SELECT MAX(Cost) from Tickets
    
  2. 对于从未拿到票的玩家:

    SELECT P.*
    FROM Players P LEFT JOIN 
         Tickets T ON T.Pnr=B.Pnr
    WHERE T.Tnr IS NULL
      AND T.Pnr IS NULL
      AND T.Date IS NULL
      AND T.Costs IS NULL
    
于 2014-05-20T09:04:28.150 回答