問題タブ [sql-except]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - SELECT * EXCEPT
のようなものを実装する RDBMS はありますSELECT * EXCEPT
か? 私が求めているのは、特定の TEXT/BLOB フィールドを除くすべてのフィールドを取得することです。それ以外はすべて選択したいと思います。
ほぼ毎日、誰かがこれを実装するべきだと同僚に不平を言っています... それが存在しないのはひどく迷惑です。
編集:に対する皆さんの懸念を理解していSELECT *
ます。に伴うリスクを知っていますSELECT *
。ただし、これは、少なくとも私の状況では、製品レベルのコードや開発レベルのコードには使用されません。すべての値を簡単に確認する必要がある場合は、厳密にデバッグ用です。
いくつかのコメントで述べたように、私が働いている場所は厳密にはコマンドライン ショップであり、すべてを ssh で実行しています。これにより、GUI ツールの使用が困難になります (データベースへの外部接続は許可されません) など。
しかし、提案をありがとう。
sql - すべての要件を満たさないアイテムを削除する
Korisnik_ID
、Artikl_ID
およびOcjena_ID
フィールドで構成されるテーブル「OcjeneKorisnika」があります。テーブルには、記事を注文するエントリとKorisnik_ID 12
、そのためのいくつかの値があります。Arikl_ID 9
Artikl_ID 13
Ocjena_ID
以下のクエリは、すべてを取得しKorisnik_ID
、除くArtikle_ID
Ocjena_ID
Korisnik_ID 12
たとえば、korisnik_ID
11 にOcjena_ID
はArtikl_ID
9 とArtikl_ID
13の値がありますがKorisnik_ID
、Korisnik_ID
1、2、... にはArtikl_ID
9 の値のみがあり、Artikl_ID
13 の値はありません ( 表 )
両方( 9 と 13 )のKorisnik_ID
値を持つものをすべて表示し、一方( 9 または 13 )の値しか持たないものを除外するにはどうすればよいですか?Ocjena_ID
Artikle_ID
Korisnik_IDs
Artikl_ID
サンプル ソース データ:
出力が必要です:
sql - Oracle の EXCEPT キーワード
Oracle 10.1.0.2.0 で EXCEPT キーワードを使用しようとしましたが、「不明なコマンド」というエラーが発生し続けました。グーグルで調べてみたところ、誰かがキーワードが MINUS であると言ったので、代わりに MINUS を使用しましたが、それでも同じエラーが発生しました。何か案が?ありがとう。
だからここに私の質問があります。コース番号が 500 を超えるすべてのコースに登録している学生の名前を見つけています
mysql - クエリで except を使用する場合の構文エラー
このクエリは機能します:
このクエリも機能します。
しかし、このクエリ:
次のエラーで失敗します。
ここで何が間違っていますか?
sql - SQL 複数マイナスと複数結合のパフォーマンス
複数のテーブルを結合する場合と MINUS を使用してレコードを削除する場合のパフォーマンスを誰かが説明できることを願っています。他のいくつかのスタック オーバーフローの質問を見ましたが、探しているものが見つかりませんでした。
これら2つのクエリは同じ出力を生成すると思っていましたが、特にスタックオーバーフローの投稿から、「結合を使用して結合を使用してください!」と常に聞いていましたが、より高速であることが期待されていました...
これは私が実行した最初のクエリで、はるかに遅いと思っていましたが、実行には数分しかかかりません...
これは私がより速いと思った 2 番目のクエリですが、現在 3 時間以上実行されています (終わりが見えない?)
3 つのテーブルすべてに 100 万を超えるレコードがあり、それぞれ最大 1,500 万のレコードがあることに注意してください。
編集:
申し訳ありませんが、この 2 つのシナリオだけに興味があるので、この質問では NOT EXISTS の使用を回答として避けていたことをお知らせするつもりでした。
sql - SQL で EXCEPT ステートメントを NOT IN ステートメントに書き換える方法はありますか?
私は SQL を学習して数週間ですが、IN と NOT IN の使用に関する宿題の問題を終えたところです。なんとか正しい答えを得ることができましたが、実際にはまだ使用を許可されていない EXCEPT 句を使用しました。私が知る限り、EXCEPT と NOT IN は SQL で非常によく似たステートメントですが、違いがわかりません。私のクエリの一般的な形式は次のとおりです。
EXCEPT ステートメントを使用せずにこの一般的なクエリを書き直す方法はありますか? 一般的に、EXCEPT と NOT IN はどのように異なりますか?
編集:この他の投稿にはいくつかの良い情報があるようですが、目的が異なる IN ではなく EXISTS に焦点を当てているようですよね?