0
expiry_date (VARCHAR)
を含むproducts
テーブルがあります。 PHPを使用して3か月後に期限切れになる製品をテーブルに表示する方法テーブルからレコードを選択する日付は今後3ヶ月となります
EDIT:EXPIRY_DATEフォーマットは2017年1月1日である(Y-M-D)
expiry_date (VARCHAR)
を含むproducts
テーブルがあります。 PHPを使用して3か月後に期限切れになる製品をテーブルに表示する方法テーブルからレコードを選択する日付は今後3ヶ月となります
EDIT:EXPIRY_DATEフォーマットは2017年1月1日である(Y-M-D)
より良いオプションではなく、日付詰め込むためVARCHARを製造するMySQLでは、日付と時刻の関数を使用することです。
DATE_ADD
とBETWEEN
を使用できます。
使用STR_TO_DATE
SELECT *
FROM tbl
WHERE STR_TO_DATE(varchar_expiry_date, '%Y-%m-%d') BETWEEN now()
AND DATE_ADD(now(), INTERVAL 3 MONTH)
'EXPIRY_DATE(VARCHAR)'それは悪いアイデアだとVARCHARに日付を変換します。 mysqlの組み込みの日付/時刻関数を使用する必要があります –
@ Fred-ii-アドバイスのおかげでSQLの初心者です! – Odie
ようこそ。 varcharを使用すると、クエリーするのがずっと難しくなり、他の機能に頼らざるを得なくなるので、さまざまな点で優れています。外部データが別のフォーマットのどこかから来ている場合、mysqlが好きなように 'd-m-Y'から' YYYY-mm-dd'に変換する前に変換する方が簡単です。 –