0

私は持っている:

テーブル infoUpdate
+---------+-----------+-----------+-----------+--- --------+
| idKey1| idKey2 | __date_Update_ | 曜日 |
+------+-----------+-----------+-----------+----- ------+
| 1___ | __ 3 __ _ _ | 2013.01.01 15:00:00 | 2 |
| | 1___ | __ 3 __ _ _ | 2013.01.01 18:00:00 | 2 |
| | 1___ | __ 3 __ _ _ | 2013.01.02 15:00:00 | 3 |
| | 1___ | __ 3 __ _ _ | | 2013.01.02 18:00:00 | 3 |
| | 1___ | __ 3 __ _ _ | 2013.01.03 15:00:00 | 4 |
| | 1___ | __ 3 __ _ _ | 2013.01.03 18:00:00 | 4 |
+------+-----------+-----------+-----------+----- ------+

timeStamp で前の行のみを取得する方法

date_Update <='2013.01.03 18:00:00' の場合は * FROM infoUpdate を選択します。

これは私が取得しようとしているものです:

+------+-----------+-----------+-----------+----- ------+
| idKey1| idKey2 | date_Update | 曜日 |
+------+-----------+-----------+-----------+----- ------+
| 1 | 3 | 2013.01.01 18:00:00 | 2 |
| | 1 | 3 | 2013.01.02 18:00:00 | 3 |
| | 1 | 3 | 2013.01.03 18:00:00 | 4 |
+------+-----------+-----------+-----------+----- ------+

4

2 に答える 2

1

これはあなたのために働くでしょうか

 Select * FROM infoUpdate  where date_Update >= DATE_SUB( '2013.01.03 18:00:00' ,INTERVAL 90 DAY ) 

これにより、言及された日付より前の90日間の記録が得られます

于 2013-09-14T14:59:09.187 に答える
0

それはあなたのために働くでしょうか:

Select idKey1, idKey2 , DayWeek, MAX(dateUpdate) as dateUpdate
FROM infoUpdate 
where date_Update <='2013.01.03 18:00:00'
GROUP BY idKey1, idKey2 , DayWeek, DATE(dateUpdate);

先週のデータのみに関心がある場合は、DATE(dateUpdate)から削除できますGROUP BY

于 2013-09-14T14:53:12.833 に答える