1
我有這樣的表:的MySQL選擇其中Max日期和最大時間
CREATE TABLE Buckets (
id INT UNSIGNED AUTO_INCREMENT,
checkDate DATE NOT NULL,
checkTime TIME NOT NULL,
accountId CHAR(13),
costCenter VARCHAR(30),
percentage DECIMAL(5,2),
UNIQUE INDEX (checkDate, checkTime, accountId, costCenter),
PRIMARY KEY (id)
)ENGINE=InnoDB;
在那裏,我有目前這樣的數據:
1 2014-03-24 08:11:27 387909559196 72350 86.92
2 2014-03-24 08:11:27 387909559196 analytics 12.71
3 2014-03-24 08:11:27 387909559196 json-files 0.36
4 2014-03-24 08:11:27 387909559196 cloud 0.01
5 2014-03-25 08:11:27 387909559196 72350 86.92
6 2014-03-25 08:11:27 387909559196 analytics 12.71
7 2014-03-25 08:11:27 387909559196 json-files 0.36
8 2014-03-25 08:11:27 387909559196 cloud 0.01
9 2014-03-25 08:38:55 387909559196 72350 86.92
10 2014-03-25 08:38:55 387909559196 analytics 12.71
11 2014-03-25 08:38:55 387909559196 json-files 0.36
12 2014-03-25 08:38:55 387909559196 cloud 0.01
我想作選擇,其選擇最多日期和最大時間。在這種情況下,結果應該只包含第9-12行。
到目前爲止,我已經嘗試過這種類型的查詢,但不幸的是我沒有得到我想要的結果:
SELECT b.id, b.checkDate, b.checkTime, b.AccountId, b.costCenter, b.percentage, c.id, c.name FROM Buckets b
JOIN CustomerAccounts ca ON (b.accountId= ca.linkedAccountId)
JOIN Customer c ON (ca.customerId = c.id)
WHERE checkDate = (SELECT max(checkDate) FROM Buckets)
AND checkTime = (SELECT max(checkTime) FROM Buckets)
提供[sqlfiddle(HTTP: //sqlfiddle.com/)和適當的模式定義,並從查詢中添加你想要的結果集 –
從你的問題中不清楚你在這裏要做什麼。請澄清。還要爲您在連接中使用的其他2個表格添加表格描述。 –
嘿,對於這種問題抱歉,但幸運的是,Vignesh Kumar設法解決了我的問題!同事也設法給我另一個解決方案! – user3458752