teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

4

推敲

2019/12/25 16:28

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -1,4 +1,4 @@
1
- 関数を使用しているビューを使用している事と、相関問い合わせという事が相まってインデックススキャンされないのではないかと思います。
1
+ 関数を使用しているビューを使用している事と、相関問い合わせという事が相まってインデックススキャンされないのではないかと思います。
2
2
 
3
3
  以下の様な副問合せであれば改善されないでしょうか。
4
4
  ```SQL

3

推敲

2019/12/25 16:28

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -1,4 +1,4 @@
1
- ビューを使用している事と、相関問い合わせという事が相まってインデックススキャンされないのではないかと思います。
1
+ 関数を使用しているビューを使用している事と、相関問い合わせという事が相まってインデックススキャンされないのではないかと思います。
2
2
 
3
3
  以下の様な副問合せであれば改善されないでしょうか。
4
4
  ```SQL

2

追記

2019/12/25 07:58

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -6,4 +6,8 @@
6
6
  WHERE (col1, col2, col3) in (
7
7
  SELECT col1, col2, col3 FROM TEST_VIEW
8
8
  )
9
- ```
9
+ ```
10
+
11
+ 理由という事なら、deleteでは相関副問い合わせを使用しているからでしょうね。
12
+ 相関副問合せは駆動表を処理しながら問合せを行うのが基本です。
13
+ ですので、突合する先にインデックスが無いなら、駆動表についてもインデックスを使用しない方が効率的だと判断するからです。

1

推敲

2019/12/25 06:33

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -1,5 +1,4 @@
1
- TEST_VIEW という名前からするとビューなんでしょうね。
2
- それと、相関問い合わせという事相まってインデックススキャンされないのではないかと思います。
1
+ ビューを使用している事と、相関問い合わせという事相まってインデックススキャンされないのではないかと思います。
3
2
 
4
3
  以下の様な副問合せであれば改善されないでしょうか。
5
4
  ```SQL