2010-01-26 32 views
5

Hey guys, sqlite3'teki zaman damgası içeren bir sütuna sahip bir tablom var. CURRENT_TIMESTAMP için varsayılan olarak, satır eklendiğinde geçerli saat eklenir. Şimdi 2 gün önce veya daha önce eklenmiş satırları almaya çalışıyorum. Bu bir anlam ifade ederse merak ediyorum.Satırları Al Zaman damgası Sütun 2 gündür

documentation Okuma ben ile geldi:

SELECT * FROM test WHERE timestamp < strftime('%s', '-2 days')

ama görünüşe göre yanlış. Bu sorgu ile geldi çünkü bu benim gerçek kodumda sınama yaptığım yönteme benzer:

strtotime($timestamp) < strtotime("-2 days").

Ancak, bu tip bir durum için sqlite3'ün bazı yerleşik kontroller içerdiğini umuyordum.

Teşekkürler, herhangi bir yanıt için teşekkür ederiz.

DÜZENLEME: it çözdü: Birinin iyi bir şeyler gelebilir durumunda bu açık tutacağız SELECT * FROM test WHERE timestamp < date('now', '-2 days')

.

+0

Uygun görgü kuralları olduğunu bilmiyordum: D EDIT: İki gün içinde kabul edeceğim, sistem bunu kabul etmeme izin verecek :) –

cevap

1

Sanırım bunu çözdüm, benim için iyi çalışıyor. Bunun yapmanın en iyi yoludur, ancak oldukça basit görünüyor olmadığını bilmek ve dediğim gibi, işleri yoktur: Postgres'e içinde

SELECT * FROM test WHERE timestamp < date('now', '-2 days') 
+0

Bu hesap farklı saat dilimleri için mi? –

4

(i ne platformu değildir biliyorum, ama burada ilanıyla başkalarının referans), ayrıca aşağıdakileri yapabilirsiniz: linkte belirtildiği gibi

SELECT * FROM test WHERE my_timestamp < NOW() - INTERVAL '2 DAY'; 
+0

bu işlenecek postgresql my_timstamp bfore NOW() – Ashwin

İlgili konular