Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
16.09.2008, 10:08
|
|||
---|---|---|---|
|
|||
Запрос Delete c Inner join |
|||
#18+
КАК ЗАСТАВИТЬ ЭТО РАБОТАТЬ??? Почему Delete не хочет работать с Inner Join??? DELETE FROM VOB06 INNER JOIN (SELECT VOB06.NAME1, VOB06.NAME2, VOB06.NAME3, VOB06.BIRTH_DATE, MIN(VOB06.START) AS MIN_START FROM (SELECT VOB06.NAME1, VOB06.NAME2, VOB06.NAME3, VOB06.BIRTH_DATE,MIN(VOB06.UP_DATE) AS MIN_UD FROM ( (SELECT NAME1,NAME2,NAME3,BIRTH_DATE,COUNT(NAME1) FROM VOB06 GROUP BY NAME1,NAME2,NAME3,BIRTH_DATE HAVING COUNT(NAME1)>1) AS V INNER JOIN VOB06 ON (V.NAME1=VOB06.NAME1)AND(V.NAME2=VOB06.NAME2)AND(V.NAME3=VOB06.NAME3)AND(V.BIRTH_DATE=VOB06.BIRTH_DATE) ) INNER JOIN STREET2 ON VOB06.STRT_CODE=STREET2.CODE GROUP BY VOB06.NAME1, VOB06.NAME2, VOB06.NAME3, VOB06.BIRTH_DATE ) AS VV INNER JOIN VOB06 ON (VV.MIN_UD = VOB06.UP_DATE) AND (VV.BIRTH_DATE = VOB06.BIRTH_DATE) AND (VV.NAME3 = VOB06.NAME3) AND (VV.NAME2 = VOB06.NAME2) AND (VV.NAME1 = VOB06.NAME1) GROUP BY VOB06.NAME1, VOB06.NAME2, VOB06.NAME3, VOB06.BIRTH_DATE) AS VVV ON VVV.NAME1=VOB06.NAME1 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.09.2008, 10:27
|
|||
---|---|---|---|
|
|||
Запрос Delete c Inner join |
|||
#18+
видел такие запросы только у знатоков и ке.... переписывайте и делайте чем проще - тем лучше нужно ли обязательно подзапросы? постоянных таблиц или курсоров с условиями ограничения недостаточно? да, просьба - офрмляйте скрипты с тегами и оформлением по-человечьи прочитать невозможно Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.09.2008, 10:36
|
|||
---|---|---|---|
|
|||
Запрос Delete c Inner join |
|||
#18+
сделал за Вас, может кто-то будет копать - но на мой взгляд это бред, кто-то накрутил и хотел что-бы кто-нибудь убился Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.09.2008, 12:11
|
|||
---|---|---|---|
Запрос Delete c Inner join |
|||
#18+
В общем случае, если в команде DELETE используется опция FROM, то надо конкретизировать из какой таблицы удалять будем, явно указав эту таблицу сразу за опцией DELETED Код: plaintext
Но вообще-то, 12345зайчик прав. Вы сами-то хоть понимаете что именно удалит этот запрос? А если понадобиться что-то изменить в алгоритме отбора удаляемых записей? Запрос явно перегружен совершенно не нужными подзапросами и лишними таблицами-источниками. Ну, вот зачем Вы вообще использовали таблицу STREET2 и с чем ее связываете? У Вас запрос (без команды DELETE) будет работать? Ну, если вместо DELETE написать SELECT * FROM ... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.09.2008, 14:30
|
|||
---|---|---|---|
|
|||
Запрос Delete c Inner join |
|||
#18+
Там написанно все как надо, такая куча подзапросов, только потому что, задача состоит из трех подзадач, которые реализуется поэтапным отбором!!! И в конце все, что получится нужно удалить, поэтому используется такая громоздкая запись ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.09.2008, 14:32
|
|||
---|---|---|---|
|
|||
Запрос Delete c Inner join |
|||
#18+
12345зайчиквидел такие запросы только у знатоков и ке.... переписывайте и делайте чем проще - тем лучше нужно ли обязательно подзапросы? постоянных таблиц или курсоров с условиями ограничения недостаточно? да, просьба - офрмляйте скрипты с тегами и оформлением по-человечьи прочитать невозможно Код: plaintext 1. 2.
рад был бы сделать проще, ан нет не получится (( ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.09.2008, 14:34
|
|||
---|---|---|---|
|
|||
Запрос Delete c Inner join |
|||
#18+
ВладимирМВ общем случае, если в команде DELETE используется опция FROM, то надо конкретизировать из какой таблицы удалять будем, явно указав эту таблицу сразу за опцией DELETED Код: plaintext
Но вообще-то, 12345зайчик прав. Вы сами-то хоть понимаете что именно удалит этот запрос? А если понадобиться что-то изменить в алгоритме отбора удаляемых записей? Запрос явно перегружен совершенно не нужными подзапросами и лишними таблицами-источниками. Ну, вот зачем Вы вообще использовали таблицу STREET2 и с чем ее связываете? У Вас запрос (без команды DELETE) будет работать? Ну, если вместо DELETE написать SELECT * FROM ... Огромное пасиб!!! Именно это и надо было сделать!!! Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=41&tablet=1&tid=1587282]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
68ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 11ms |
total: | 169ms |
0 / 0 |