次の sqlite3 インタラクティブ セッションをご覧ください。
sqlite> create table d(t date);
sqlite> insert into d values('1913-12-23');
sqlite> select t,typeof(t) from d;
1913-12-23|text
sqlite>
日付フィールドがテキストとして表示されるのはなぜですか? 数値の場合、記憶域は小さくなり、クエリは高速になりますか?
Sqlite3 データ型のドキュメントは、§2.2 の表によると、日付列のアフィニティが数値であることを示しています。テキストではなく数値として保存された日付フィールドは、占めるスペースが少ないので理想的だと思います。私はまだ sqlite をよく理解していない可能性が非常に高いので、私の懸念は無効かもしれません。
簡単にコピー/貼り付けするには:
create table d(t date);
insert into d values('1913-12-23');
select t,typeof(t) from d;