1

私はこの単純な(実際には実際のケースを単純化しています)SQLコマンドを持っています:

SELECT Username, Message
FROM Mail
WHERE DeleteBySender = '0'
LIMIT 1

しかし、何らかの理由で、特別な条件があります。つまり、 IF Mail.Username = 'johndoe' の場合、WHERE 句はもうありませ DeleteBySender = '0'が、 DeleteByReceiver = '0' .

つまり、Mail.Username の結果に基づいて動的な WHERE 句を作成する方法は?

単一のSQLコマンドで実行できますか? そうでない場合、私の実際のケースでは、PHP スクリプトがより複雑になるためです。

**UPDATE : 私が本当に期待していることは、平易な英語で: Mail.Username NOT johndoe の場合、SQL コマンドは次のようになります。

SELECT Username, Message
FROM Mail
WHERE DeleteBySender = '0'
LIMIT 1

ただし、Mail.Username が johndoe の場合、SQL コマンドは次のようになります。

SELECT Username, Message
FROM Mail
WHERE DeleteByReceiver = '0'
LIMIT 1
4

3 に答える 3