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

mysqlテーブルに存在しない値を取得する

    キーを使用して一時テーブルを作成します:

    CREATE TEMPORARY TABLE mykeys (`key` INT);
    INSERT INTO mykeys VALUES (1),(2),(3),(4),(5);
    

    次に、NOT INを使用します:

    SELECT `key`
    FROM mykeys
    WHERE `key` NOT IN (SELECT `key` FROM mytable)
    

    最後に、必要に応じてTEMPテーブルを削除します。

    DROP TABLE mykeys
    

    編集SQLFiddle を追加しました 。

    EXCEPTをサポートするPostgreSQLを使用している場合 オペレーター 、およびVALUES ステートメントを使用して、値のリストから行セットを作成できます。一時テーブルなしでこれを行う別の簡単な方法があります( SQLFiddle ):

    VALUES (1),(2),(3),(4),(5)
    EXCEPT
    SELECT key FROM mytable
    


    1. バックアップからのMySQLまたはMariaDBGaleraクラスターの完全な復元

    2. Postgres関数がテーブルを返し、列にデータを返さない

    3. pyodbc.connect()は機能しますが、sqlalchemy.create_engine()。connect()は機能しません

    4. 非rootユーザーとしてC#でMySQLデータベースに接続しますか?