我有一張表格可以幫助我追蹤從屬和主人之間的延遲時間。我的問題是如何制定一個選擇語句:
1.給我最新的延遲值,不重複(或跳過)IP地址
2.如果我添加額外的服務器或不需要更新服務器變得沒有反應MySQL嵌套查詢選擇語句
此查詢的目標是向我展示哪些服務器可用於工作,並給我粗略估計他們工作的難度。不可操作的服務器不應出現在結果中。我正在運行一個腳本來評估每分鐘的延遲時間,所以如果我可以限制可能的記錄返回到最後一分半鐘,那應該足以告訴我哪些服務器最後一次啓動了查詢。
表看起來是這樣的(更名爲保護無辜者列):
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
ip VARCHAR(20) NOT NULL ,
sent TIMESTAMP NOT NULL ,
delay DECIMAL (7,4) NOT NULL ,
status VARCHAR(100) NOT NULL ,
execution_time` DECIMAL (7,4)NOT NULL ,
deleted` TINYINT NOT NULL ,
任何幫助,將不勝感激。
那麼,只是證明我還有很多東西要學習,考慮到我甚至不知道這是可能的......我的查詢結果看起來像這樣: SELECT delay,ip FROM status,(SELECT id ,最大(發送)從狀態組通過IP)innertable WHERE innertable.id = status.id 這給了我更多的谷歌...謝謝。 – 2010-08-23 21:12:51
對不起,我認爲這是正確的,但我意識到它只是返回我的兩個第一個記錄。 – 2010-08-23 21:37:08
內部查詢(選擇ID,最大(發送),IP從table_name組ip)給你你期望的結果。我假設你想在每個IP地址的結果集中有一行。那是對的嗎? – MikeTheReader 2010-08-23 21:51:44