|
|
|
Как работает WITH и INSERT/UPDATE ?
|
|||
|---|---|---|---|
|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. Почему SELECT * FROM test; возвращает 3 Такое ощущение, что test кешируется на момент старта запроса и insert не учитывается при update'е ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2015, 17:25 |
|
||
|
Как работает WITH и INSERT/UPDATE ?
|
|||
|---|---|---|---|
|
#18+
Kvasnikov, К inserted нет обращения. Куда там кешировать твои ощущения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2015, 17:29 |
|
||
|
Как работает WITH и INSERT/UPDATE ?
|
|||
|---|---|---|---|
|
#18+
p2., Немного не так. В RTFM написано. Если очень коротко, то: 1. Выполняется подзапрос inserted, но его результат не доступен из основного запроса. 2. Выполняется основной запрос. Но так как результат подзапроса ему не доступен, то будут модифицированы все 0 строк, которые ему доступны в таблице. В итоге имеем то, что имеем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2015, 17:48 |
|
||
|
Как работает WITH и INSERT/UPDATE ?
|
|||
|---|---|---|---|
|
#18+
ursido, Следуя этой части документации, в частности второму примеру, следует что (в данном случае) внешний UPDATE безусловный и потому должен изменить все записи в таблице. Возможно тут дело в том, что обе части работают с одной и той же таблицей атомарно — до завершения запроса в таблице данных нет, потому UPDATE и не имеет эффекта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2015, 17:59 |
|
||
|
Как работает WITH и INSERT/UPDATE ?
|
|||
|---|---|---|---|
|
#18+
vyegorov, авторThe sub-statements in WITH are executed concurrently with each other and with the main query. Therefore, when using data-modifying statements in WITH, the order in which the specified updates actually happen is unpredictable. All the statements are executed with the same snapshot (see Chapter 13), so they cannot "see" one another's effects on the target tables. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2015, 18:06 |
|
||
|
Как работает WITH и INSERT/UPDATE ?
|
|||
|---|---|---|---|
|
#18+
qwwq, Спасибо, искал именно эту часть и “недоискал”. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2015, 18:18 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=39116656&tid=1997602]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
171ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 441ms |

| 0 / 0 |
