答えて
WITH
句は、一般に、HAVING
などの複雑な句を含む2つのサブクエリに対していくつかの結合を実行する必要がある場合に選択クエリで使用されます(必ずしもそうではありません)。一般にWITH
と記載されている句は、SELECT
ステートメントでのみ使用できます。
しかし、データを操作する必要がある場合、ある条件でデータを変更したい場合や、複雑な条件によっては再度TEMP TABLE
としたい行を削除したい場合もあります。ほとんどのケースはWITH
によって実現されますが、これは一般的に複雑なロジックを必要とします。TEMP
テーブルでは、同じように2つの異なるSQL文を使用できます。あなたはS3
からのデータのトンをロードしたい場合にも、TEMP
テーブルは、一般的にTEMP
テーブルすなわちステージングテーブルではなく、SELECT
クエリのビューとして使用されている
が使用されている、あなたは、一時テーブルにデータをロードする場合がありますデータを分析し、冗長性を除去し、最後に元のテーブルに一度にマージします。
TEMP
テーブルは現在のセッションでのみ一時的ですが、WITH
は常に再評価されます。
主な違いは、テンポラリテーブルがストアドテーブルであることです。 CTEはビューに似ていて、SQLをより読みやすく、論理的に表現するのに役立ちます。同じ相違点が表とビューの間に適用されます。これは、表を使用するとパフォーマンスが向上する可能性があります。
非常に複雑なクエリを作成する場合や、段階的に作成する必要がある場合は、WITH句/ CTEを使用すると役立ちます。しかし、パフォーマンスを向上させるためにテーブルにデータを格納する場合は、一時テーブルを使用するのが最善の方法です。 同様に、テンポラリテーブルを何度も何度も使用することができます。そのため、複数のクエリで同じコードを使用していた場合は、CTEではなくテンポラリテーブルを考慮する必要があります。
- 1. WITH句 - 作成する一時テーブル
- 2. Clojureでwith-redefsとwith-redefs-fnの違いは何ですか?
- 3. 一時データベースと履歴アーカイブデータベースの違いは何ですか?
- 4. SSRSではTablixフィルタとクエリ句の違いは何ですか
- 5. mysqlのビューと一時テーブルの違いは何ですか?それは良いですか?
- 6. このWHERE句とこのJoinの違いは何ですか?
- 7. 字句スコープと静的スコープの違いは何ですか?
- 8. LISPでは、 "let"と "with"の違いは何ですか?
- 9. Windowsサービスでは、停止と一時停止の違いは何ですか?
- 10. 「Clang with Microsoft CodeGen」と「LLVM-vs2014」の違いは何ですか?
- 11. "C#editor"と "C#editor with encoding"の違いは何ですか?
- 12. 「コンパイル時間」と「実行時間」の違いは何ですか?
- 13. C++の一時変数と定数の違いは何ですか?
- 14. アレルグローグラフと5列のmysqlテーブルの違いは何ですか?
- 15. テーブルのサイズと高さ/幅の違いは何ですか?
- 16. LINQ-to-SQLのwhere句と&&演算子の違いは何ですか?
- 17. OneToMany - 結合テーブルと外部キーの違いは何ですか?
- 18. アニメーションとアニメーターの統一性の違いは何ですか?
- 19. os.path.isdir()の使用時に './'と '../'の違いは何ですか?
- 20. CSSロード時のGTK 3.14と3.18の違いは何ですか
- 21. ファイルのインクルード時に./と../の違いは何ですか?
- 22. 時間マルチスレッドとスーパースレッドの違いは何ですか?
- 23. Laravelで直接関係にアクセスしてwithとの違いは何ですか?
- 24. Pythonで '@ patch.object'と 'with patch.object'を使用する違いは何ですか?
- 25. $と$$の違いは何ですか?
- 26. `##`と `hashCode`の違いは何ですか?
- 27. typedefとの違いは何ですか?
- 28. NodeJS:「./ ..」と「..」の違いは何ですか?
- 29. {}())と{})の違いは何ですか?
- 30. `&`と `ref`の違いは何ですか?
主な相違点:with句は、関連するクエリで直接使用する必要があります。テンポラリテーブルでは、セッション中にテンポラリテーブルを使用できます。だから、彼らの寿命は異なります。 –