2013-11-12 5 views
-4

Я хочу, чтобы обновить как несколько таблиц с одним запросом ... каккак обновить несколько столбцов таблицы с помощью объединений

update astatus a1,provider pr1,location br1 JOIN(
select br.id as bId,pr.id as pId,a.id as aId 
from astatus a,member m,provider pr,pricing_plan p,location br,pricing_scheme ps 
where date(a.next_payment_date)<=date(subdate(current_date, 1)) 
and a.pricing_plan_id=p.id 
and p.pricing_scheme_id=ps.id 
and ps.type='SUBSCRIPTION' 
and a.status is null 
and m.astatus_id is not null 
and m.astatus_id=a.id 
and pr.member_id=m.id 
and br.provider_id=pr.id) 
as dup 
ON a1.id=dup.aId,pr1.id=dup.pId,br.id=dup.bId 
set a1.pricing_plan_id=null,pr1.auto_applied=0,br1.featured=0 

, но это дает error..Please помочь мне

+0

, что ERRO r дает? –

+0

Какой двигатель БД вы используете? –

+3

Почему вы отметили это с помощью 'sql-server' ** и **' mysql'. Вам нужно, чтобы этот оператор запускался на нескольких СУБД? –

ответ

2

изменения этого

ON a1.id=dup.aId,pr1.id=dup.pId,br.id=dup.bId 

в

ON a1.id=dup.aId and pr1.id=dup.pId and br.id=dup.bId 
Смежные вопросы