2017-11-22 8 views
0

時刻を保存するために日付から日付への変換を入力すると、時刻のデフォルト値はどのようになりますか?私はちょうど日付であるデータを移行したいです。データには「value_to」と「value_from」のペアがあります。これらの値は日付であり、datetimesでなければなりません。私は、変換をalembic + sqlalchemyアップグレードで行い、ダウングレードを元に戻すことができると思います。私はそれが問題ではなく、 "value_from"は00:00:00でなければならず、 "value_to"は23:59:59でなければならないと思いますが、私の計画で間違いがありますか?タイプはMySQLの日付から日時に変換されます

答えて

1

この種の質問には、alembic + sqlalchemyがなければ答えられます。これがあなたのtestデータベース用のものです。ただ、mysqlクライアントでそれを試してみてください。

mysql> use test; 

mysql> create table foo (d date); 

mysql> insert into foo set d = now(); 

mysql> select * from foo; 
+------------+ 
| d   | 
+------------+ 
| 2017-11-22 | 
+------------+ 

mysql> alter table foo modify d datetime; 

mysql> select * from foo; 
+---------------------+ 
| d     | 
+---------------------+ 
| 2017-11-22 00:00:00 | 
+---------------------+ 

そして、はい、あなたの列がDATETIMEであり、あなたはあなたがの間で使用することができ、特定の日を検索したい場合は:あなたがDATETIMEを使用している場合

mysql> select * from foo where d between '2017-11-22 00:00:00' and '2017-11-22 23:59:59'; 

しかし、分数精度の場合は、不等式を実行したいので、1日の最後の1秒を逃しません。

mysql> select * from foo where d >= '2017-11-22 00:00:00' and d < '2017-11-23 00:00:00'; 
関連する問題