WHERE 句を使用しているクエリがあります。
私の質問:
SELECT * FROM notifications WHERE recipient= '".$_SESSION['id']."' AND viewed >
'".$twoweeksago."' OR viewed IS NULL ORDER BY recieved DESC
基本的に、クエリは、受信者がログインしているユーザーであり、表示された日付が 2 週間未満の日付であるすべてのデータ行を選択します ($twoweeksago はスクリプトで設定された変数です)。ただし、表示された列のデフォルトは 0000-00-00 00:00:00 であるため、次を使用する必要がありました。
OR viewed IS NULL
これは問題を引き起こします。前の条件にのみ適用される条件だと思いました。
AND viewed > '".$twoweeksago."'
ただし、これは実際には WHERE 句全体の OR であり、前のすべての条件を無効にします。AND View > '".$twoweeksago."' のみに影響する OR 条件を作成するにはどうすればよいですか。
ありがとう!