select * from table where userid=parentid and age>30 のようなクエリを記述するにはどうすればよいですか?この使用法はドキュメントには見つかりませんでした。
@ty0716 が標準的な回答です。
付け加えておきますが、なぜこのようなことが起こっているのでしょうか。 あなたの要件は、whereの右辺値としてparentidを参照する必要があることです。ただし、laravelでは、whereの右辺値はSQLにすることはできず、文字列、値、時間などの通常のデータ構造のみにすることができます。 SQL インジェクションを防ぐため、フィールド名 (users.id) や SQL 関数を使用することはできません。
users.id
したがって、ネイティブ SQL を実行するには、@ty0716 が言及した raw メソッドのみを使用できます。
誰も知りませんか?
リーリー
方法1
リーリー方法 2
リーリー@ty0716 が標準的な回答です。
付け加えておきますが、なぜこのようなことが起こっているのでしょうか。
あなたの要件は、whereの右辺値としてparentidを参照する必要があることです。ただし、laravelでは、whereの右辺値はSQLにすることはできず、文字列、値、時間などの通常のデータ構造のみにすることができます。 SQL インジェクションを防ぐため、フィールド名 (
users.id
) や SQL 関数を使用することはできません。したがって、ネイティブ SQL を実行するには、@ty0716 が言及した raw メソッドのみを使用できます。
誰も知りませんか?
リーリー