私は特定のデータベーステーブルの列に対応するvarchar値の束を持っているsqlクエリを設定したいと思います。結果は、テーブルの列にではないのすべての値を私に与える必要があります。このようなコレクションのどの要素がテーブルの列にないのかを選択してください
何か:
SELECT x.a
FROM (SELECT ('1','2','3') AS a) x
WHERE x not in (
SELECT knr
FROM table
)
内側の選択は、私は右のそれを設定する方法がわからない、またはこれが偶数の場合、単一のレコードとして扱われているので、私はこれが動作するために取得していません可能。
誰でも私にこれをアーカイブするヒントを教えてもらえますか?あなたがこれを使用することができますので、あまりにも、PostgresはTable Values Constructor構文を実装してい
select X.A
from
(select '1' as A union select '2' as A union select '3' as A) x
where A not in (select knr from table1)
私が覚えている限り、 'VALUES'節はPostgreSQLで動作しています。私は最近、バージョン8.4で使用しましたが、おそらくこれよりずっと前です。 –
@エルスン:Thnx、私はそれを修正します。私はそれもあったと思ったが、* "Postgres Table Values Constructor" *の高速検索を投稿したときには結果が出なかった。 –
あなたの答えをありがとう、2番目のクエリは私のニーズに完全に動作します。最初の方がより一般的です。なぜなら、where句でxをx.aに置き換えると、mysqlとmssqlでうまく動作するからです。 – acoder