3

我被困在一个查询中,以比较同一张表上的不同时间并列出常见和所有不常见的时间之一。

        ID ID_STORE Opentime       Closetime
---------- -------- ---------- -------------------------------
         1        6 09:30:00       18:00:00
         2        6 09:30:00       18:00:00
         3        6 09:30:00       18:00:00
         4        6 09:30:00       18:00:00
         5        6 09:30:00       16:00:00
         6        6 10:30:00       15:00:00

像在这张表中,输出应该像

        ID ID_STORE Opentime       Closetime
---------- -------- ---------- -------------------------------
         4        6 09:30:00       18:00:00
         5        6 09:30:00       16:00:00
         6        6 10:30:00       15:00:00
4

3 回答 3

3

正如我所观察到的,您ID在每个独特的开放时间和关闭时间以及每家商店都获得了最新信息。

SELECT MAX(ID) as ID,
        ID_Store,
        OpenTime,
        CloseTime
FROM tableName
GROUP BY ID_Store,
        OpenTime,
        CloseTime
于 2012-09-13T06:34:43.543 回答
2

从您给出的示例中,在我看来,您只需要 aGROUP BY并决定您在ID.

我已经使用MAX它,因为它根据您的示例返回结果。

SELECT MAX(ID), OpenTime, CloseTime
FROM   YourTable
GROUP BY
       OpenTime, CloseTime

你可以继续阅读

于 2012-09-13T06:34:20.527 回答
2

您需要使用GROUP BY子句。并且ID您可以使用聚合函数,如MAX()MIN()根据您的要求。

SELECT MAX(ID) AS ID, ID_STORE, Opentime,  Closetime 
  FROM myTable 
  GROUP BY ID_STORE, Opentime, Closetime
于 2012-09-13T06:34:46.670 回答