簡體   English   中英

比較mysql中同一表的兩行列

[英]compare column of two rows of same table in mysql

我有一個表名player_history其中包含玩家的歷史記錄。 在此表中,具有列player_id,Final_position,meeting_code,race_no和beaten_time。 如果玩家站在第一或第二位置,則時間相同,一天將有會議代碼,而每個會議代碼中最多有10場比賽。

我想選擇第一位置和第二位置的敲打時間不同的那些記錄。

player_id Meeting_Code race_no final_position beaten_time
  1         0001          1         1             2
  2         0001          1         2             2
  1         0001          2         1             5
  2         0001          2         2             6        
... so on

輸出應為:

player_id Meeting_Code race_no final_position beaten_time
  1         0001          2         1             5
  2         0001          2         2             6 

另外,如果不正確,我只想更新第一個位置的記錄。

讓表名稱為Test 嘗試放入“自我加入”或類似的內容:

Select t1.player_id t1.Meeting_Code t1.race_no t1.final_position t1.beaten_time
From Test t1
LEFT JOIN Test t2 ON t1.beaten_time != t2.beaten_time.

嘗試這樣。 它可能會起作用。

選中它會起作用

SELECT *
FROM   table_name
GROUP BY player_id
HAVING count(beaten_time) = 1;

試試吧:

select b.player_id,b.meeting_code,b.race_no,b.final_position,b.beaten_time 
from player_history a,player_history b
where  a.race_no = b.race_no and a.beaten_time != b.beaten_time;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM