sql >> データベース >  >> RDS >> Mysql

Django raw()クエリ、WHERE句の計算フィールド

    実際には、Django自体とは関係ありませんが、MySQLの動作方法とは関係があります。

    WHERE句の評価がエイリアスの評価に先行するため、WHERE条件でエイリアスを使用することはできません。

    次のいずれかを実行できます:

    • 条項を繰り返します:

      Company.objects.raw('''SELECT *,core_location.a + core_location.b as dist
      FROM core_location,core_company
      WHERE (core_location.a + core_location.b)<10    
      ORDER BY dist''')
      
    • 副選択を行う:

      Company.objects.raw('''SELECT * FROM (
          SELECT *,core_location.a + core_location.b as dist
          FROM core_location,core_company            
      ) as subselect
      WHERE dist<10  
      ORDER BY dist''')
      


    1. SQL Server:CROSSJOINとFULLOUTER JOINの違いは何ですか?

    2. SpringBoot構成で正しいMySQLJDBCタイムゾーンを設定する方法

    3. mysql-2つの制限が必要ですか?

    4. MySQLで今日以上の日時