MySQL :: Multiple table update (LIMIT)
9 отговора
523 прегледа
MySQL :: Multiple table update (LIMIT)
Както е написано тук: [линк]
"Note: You cannot use ORDER BY or LIMIT with multiple-table UPDATE."
Въпросът ми е защо? Каква е разликата дали таблиците са 1 или 100? Така или иначе, даден набор от редове съвпада с WHERE клаузата - каква е причината да не мога да кажа на MySQL да промени само 1 запис?
И съответно как да си реализирам UPDATE върху няколко таблици с някакъв LIMIT с "конвенционални" средства?
Everything louder than everything else...
"Note: You cannot use ORDER BY or LIMIT with multiple-table UPDATE."
Въпросът ми е защо? Каква е разликата дали таблиците са 1 или 100? Така или иначе, даден набор от редове съвпада с WHERE клаузата - каква е причината да не мога да кажа на MySQL да промени само 1 запис?
И съответно как да си реализирам UPDATE върху няколко таблици с някакъв LIMIT с "конвенционални" средства?
Everything louder than everything else...
Re: MySQL :: Multiple table update (LIMIT)
Дай конкретен пример какво искаш да правиш.
Re: MySQL :: Multiple table update (LIMIT)
Искам да направя UPDATE на едно поле в дадена таблица, въз основа на критерии, които зависят от други 5 таблици. Стандартният подход обаче:
"SELECT ... UPDATE"
не ми върши работа, защото искам да направя нещо като ръчен locking на това, което съм select-нал. А в горния случай е възможно 2 клиента едновременно да са между SELECT и UPDATE. Така че съм си реализирал нещата с цикъл do...while (!mysql_affected_rows()) - само дето е дървено. Искам да знам защо е забранен UPDATE и LIMIT в контекста на много таблици.
Everything louder than everything else...
"SELECT ... UPDATE"
не ми върши работа, защото искам да направя нещо като ръчен locking на това, което съм select-нал. А в горния случай е възможно 2 клиента едновременно да са между SELECT и UPDATE. Така че съм си реализирал нещата с цикъл do...while (!mysql_affected_rows()) - само дето е дървено. Искам да знам защо е забранен UPDATE и LIMIT в контекста на много таблици.
Everything louder than everything else...
official
Така де...тук уж се подвизаваше едно "официално лице"...
Everything louder than everything else...
Everything louder than everything else...
Re: official
То е в отпуск май
root@ro6avia#echo rm -rf * > /bin/seek_and_destroy
root@ro6avia#/bin/seek_and_destroy
root@ro6avia#echo rm -rf * > /bin/seek_and_destroy
root@ro6avia#/bin/seek_and_destroy
Re: official или както му викат на ингилизки
Disclaimer:
В този форум няма "официални" лица. Вярно е, че работя за MySQL AB но не присъствам тук официално а за собствено удоволствие.
Официалният (съвсем сериозно) начин е да обясниш какво искаш на bugs.mysql.com като Feature Request
salle.online.bg/sig
В този форум няма "официални" лица. Вярно е, че работя за MySQL AB но не присъствам тук официално а за собствено удоволствие.
Официалният (съвсем сериозно) начин е да обясниш какво искаш на bugs.mysql.com като Feature Request
salle.online.bg/sig
мдам
Мерси. Просто си питах, ако някой има инфо по въпроса. 
Everything louder than everything else...
Everything louder than everything else...
Re: Виждам, че вече пробваш
Дааа...то като се фиксне тоз бъг, ще се оправи и multiple limit-а...
.
Everything louder than everything else...
Everything louder than everything else...