對於與編程來說是對數據做出各種各樣的處理,而一般來說,數據的最終保存地就是數據庫,數據庫的的sql操作就顯得很是重要。如果某數據庫中一張表保存有大量的數據,二這張表的某些數據是相同的,那么如何依據這個相同的字段值而查詢出與這個字段相關的記錄的最后一條或者是第一條數據呢?
首先,就單純地以實驗的角度來說,首先需要創建一張表,然后填充少量的數據,其中一個或某些字段的值是相同的,這個時候可能就需要復制、插入這樣的sql操作語句了:
創建一張表message,然后填充幾條基礎數據,然后條件復制數據寫入同一張表:
INSERT INTO aaa(account,content,TIME) SELECT account,content,TIME FROM aaa WHERE id=1;
注:記得修改time字段的值,因為本實例是依據時間來取值的,也可以根據自己的需要自行設置取值條件。
第二步,現在開始取值。
比如說,我要獲得每個account的最后一條交流記錄:SELECT * FROM message WHERE TIME IN(SELECT MAX(TIME) FROM message GROUP BY account)。
注:也可以只取第一條數據,只需修改一下子查詢的max()函數為min()就可以了。