我對mysql命令還是一個新手,我學會了如何獲取列的最大值和列的數量。我的數據庫被命名爲DB和我的表(名爲「foo」)是這樣的:如何獲得mysql中最大字段的相應ID
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id | varchar(64) | NO | PRI | NULL | |
| expires | datetime | YES | MUL | NULL | |
| extra | text | YES | | NULL | |
| valid | tinyint(1) | NO | | NULL | |
| trust_id | varchar(64) | YES | MUL | NULL | |
| user_id | varchar(64) | YES | MUL | NULL | |
+----------+-------------+------+-----+---------+-------+
基本上,我想知道是否有一種方式來獲得最大日期的過期字段,然後打印出相應的字段,如user_id和id。到目前爲止,這是我目前使用來獲取最大日從在命令行到期命令
mysql -u root db -e "select max(id) from foo;"
就憑這會給我:
+---------------------+
| max(expires) |
+---------------------+
| 2016-08-05 17:54:44 |
+---------------------+
我想什麼做的是把它恢復:
+---------------------+--------+--------+
| max(expires) | id | user_id|
+---------------------+--------+--------+
| 2016-08-05 17:54:44 |cd97eb4 | 2bf2cec|
+---------------------+--------+--------+
那麼,我會有最大過期日期以及該過期日期的ID和用戶ID。
任何洞察力非常感謝!
你是說你想通過ID最大過期? –
您需要將最大查詢作爲子查詢,並根據計算出的字段將其返回到最大值的原始表;請記住,如果多個行具有最大值,您可能會在結果中獲得多行。 – Uueerdo
@MattCremeens對帖子進行了更新。我希望這個問題更清楚:) – zet