私はワードプレスのウェブサイトで作業しています。予定されているカレンダーを取得して、サイドバーに表示する予定のイベントを取得する必要があります。これを行うために、カスタム投稿タイプにメタフィールド(日付)を追加しました。私がやりたいことは、SQL(MySQL)を介して予定されているイベントを取得することです。wordpress(MySQLデータベース)で使用するためにlongtextをdatetimeに変換する
私はあなたが特定の機能(CUR_DATE()やNOW()など)とデータを比較できることは知っていますが、データがメタフィールドとして保存されているため、datetimeではなくlongtext上記の機能と比較して自分のデータを選択することは不可能です。私はCONVERTを使ってみましたが、これは構文エラーをスローします。どのように私はこれを解決することができますか?
以下は、構文エラーを投げているSQLを見つけることができます。私がCONVERTを含むステートメントを除外すると、結果が得られます。私の日付はd-m-Y btwと書式設定されています。
SELECT p.ID FROM tt_posts p
INNER JOIN tt_postmeta pm
ON p.ID = pm.post_id
WHERE
p.post_type = "activity" AND
p.post_status = "publish" AND
pm.meta_key = "date" AND
CONVERT(DATETIME, pm.meta_value) >= NOW()
ORDER BY pm.meta_value ASC
私はこれを試みたが、それは私のために働かなかった。私は私のJOINと私のWHEREステートメントの間に変換を配置しました:) –