[英]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.