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

mysql相互参照テーブルの少なくとも1つの行がnullまたは基準であるかどうかを確認する方法

    これは、EXISTSの古典的なユースケースのように聞こえます 演算子:

    SELECT *
    FROM   mytable a
    WHERE  EXISTS (SELECT 1
                   FROM   mytable b
                   WHERE  a.foreignkey = b.foreignkey 
                   AND    trainer IS NOT NULL 
                   AND    trainer <> 'FREE'
    

    編集:
    明確に異なるforeignkeyが必要な場合 s:

    SELECT DISTINCT foreignkey
    FROM   mytable a
    WHERE  EXISTS (SELECT 1
                   FROM   mytable b
                   WHERE  a.foreignkey = b.foreignkey 
                   AND    trainer IS NOT NULL 
                   AND    trainer <> 'FREE'
    


    1. リクエストURLでテーブル名とフィールド名を公開する

    2. あるテーブルから別のテーブルに挿入するPostgreSQLの関数?

    3. SQLをSQLalchemyに変換する

    4. 昇給後に平均給与を下回っている従業員を取得する