在这里,我想要第一行完整的值

时间:2015-05-19 11:44:15

标签: php mysql

ITEM         CURRENT TOKENS      STATUS               DATE/TIME
mypro        0.10/0.10          ongoing               19/05/2015 17:42:03
mypro        0.20/0.10          ongoing               19/05/2015 17:40:57
myproduct3   0.10/0.10          ongoing               19/05/2015 15:53:1

这里我想要第一行完整的值,这些值最近存储在同一产品而不是第二个产品中,当我使用group by cluase时,我在mysql数据库中得到第二行值。

2 个答案:

答案 0 :(得分:1)

MySQL不知道第一行/第二行,除非你指定它,我假设你想要一个最新的DATE/TIME

对于简单查询,可以使用ORDER BYLIMIT

轻松实现
  SELECT *
    FROM table
ORDER BY date_time_col DESC /* Latest rows first */
   LIMIT 1; /* Fetch only the first row */

对于分组查询,这比较困难,我喜欢LEFT JOIN方法:

   SELECT *
     FROM table t
LEFT JOIN table t1 /* Join to rows of same item & later times */
       ON t1.item_col = t.item_col
      AND t1.date_time_col > t.date_time_col 
    WHERE t1.item_col IS NULL; /* Rows that have no later time */

这确实假设item_coldate_time_col具有唯一的组合。

答案 1 :(得分:0)

SELECT * FROM TBL_NAME ORDER BY DATE_TIME DESC LIMIT 1

试试这个