|
Есть ли разница между вложеным запросом и обьединением?
|
|||
---|---|---|---|
#18+
Привет, Елементарный пример - 2 таблицы связаны по ID. То есть в одной из них хранится ИД из другой. Вопрос: Есть ли разница между вложеным запросом и обьединением в следующем случае и если нет то в каких случаях есть? select id from area where column_id in ( select id from column ) select area.id from area, column where area.column_id = column.id; Абсолютно разный синтакс но результат кажется одинаковым должен быть. Всем привет, Слава. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2002, 14:22 |
|
Есть ли разница между вложеным запросом и обьединением?
|
|||
---|---|---|---|
#18+
По-моему, в данном случае Оракловский оптимизатор преоблазует IN конструкцию в конструкцию JOIN-ов. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2002, 16:41 |
|
Есть ли разница между вложеным запросом и обьединением?
|
|||
---|---|---|---|
#18+
Случаи бывают разные.... в данном примере результаты будут одинаковы, но если условие не простое равенство полей ?: select * from table1 where table1.field1>(select max(table2.field1) from table2 ) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2002, 08:11 |
|
Есть ли разница между вложеным запросом и обьединением?
|
|||
---|---|---|---|
#18+
Если таблицы связаны 1 к 1, то разницы нет. Будет возвращен список ID из area. А если к строке area прицеплено N строк в columns, то во вторм случае каждое значение ID из area будет повторено N раз. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2002, 13:08 |
|
|
start [/forum/topic.php?desktop=1&fid=52&tid=1993433]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
37ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
2ms |
others: | 20ms |
total: | 134ms |
0 / 0 |