16

ひょっとして文字列だと思ったので、文字列として比較してみましたが、意外と失敗しました。それがMysqlでどのように機能するかだと思います。しばらくやってないから間違ってるかも。どちらの場合でも、SQLite で日付が等しいかどうかを確認するにはどうすればよいですか? WHERE 句で使用します。

SELECT a._id, b._id, b.start_date,a.event_name, b.start_time, 
b.end_date, b.end_time, b.location FROM events_info b INNER JOIN events a ON
 a._id=b.event_id WHERE b.start_time = '6:00';

(見やすいように余白を増やしています)

4

3 に答える 3

3

SQLiteバージョン3のデータ型から:

1.2 日付と時刻のデータ型

SQLite には、日付や時刻を格納するためのストレージ クラスが用意されていません。代わりに、SQLite の組み込みの日付と時刻関数は、日付と時刻を TEXT、REAL、または INTEGER 値として格納できます。

  • ISO8601 文字列としてのTEXT ("YYYY-MM-DD HH:MM:SS.SSS")。
  • ユリウス日としてのREAL。先発グレゴリオ暦による紀元前 4714 年 11 月 24 日のグリニッジ正午からの日数。
  • UNIX 時間としてのINTEGER、1970-01-01 00:00:00 UTC からの秒数。

アプリケーションは、これらの形式のいずれかで日付と時刻を保存することを選択し、組み込みの日付と時刻関数を使用して形式を自由に変換できます。

Date And Time Functionsの例を見ると、次のようなもので目的に近づけることができます (これは現在の日の 6:00 であると想定しています)。

WHERE b.start_time = date('now', 'start of day', '+6 hours')
于 2012-06-04T04:09:13.713 に答える