我正在搜索如何使用2-3列進行選擇,並將結果與一列中的參數作爲NULL,否則如果沒有用戶名爲NULL,取最大日期。MySQL - 採取特定的行是一個值NULL或最大值,不只是列
我的問題是,在結果中,IPADDR是最大停止時間行,如果沒有空行,我得到了IPADDR正確
對我很重要的可以通過用戶的搜索。
讓我們看看我的數據庫格式:
username stoptime ipaddr
peter 2012-10-16 00:00:00 1.1.1.1
obama 2014-03-12 00:00:00 1.1.1.2
peter 2013-10-16 00:00:00 1.1.1.3
obama NULL 1.1.1.4
當我啓動:
SELECT username,case when MAX(stoptime is NULL)=0 then max(stoptime) end as stoptime,ipaddr
FROM tb
WHERE username LIKE "%OBAM%" group by username;
在這個例子中我希望從我的查詢這個結果:
obama NULL 1.1.1.4
取而代之的是這個:
obama NULL 1.1.1.2
謝謝!
如果你有幾個記錄用'NULL'記錄你想得到什麼? – Alex
那裏不會與具有相同的用戶名和停止時間作爲NULL重複,直到沒有停止時間,它不會在停止時間與NULL的另一行créate。 – zetoniak
爲什麼你不把時間價值呢?或者可能創建另一列'starttime' – Alex