[英]update multiple rows by one mysql query
我試圖通過一個mysql更新查詢更新多行。這是我的代碼。但它沒有工作。顯示錯誤。我試圖更新mysql表中的開始和結束字段
$resname=$_POST['resname'];
$rw1start=$_POST['rw1start'];
$rw1end=$_POST['rw1end'];
$rw2start=$_POST['rw2start'];
$rw2end=$_POST['rw2end'];
$rw3start=$_POST['rw3start'];
$rw3end=$_POST['rw3end'];
$rw4start=$_POST['rw4start'];
$rw4end=$_POST['rw4end'];
$rw5start=$_POST['rw5start'];
$rw5end=$_POST['rw5end'];
$rw6start=$_POST['rw6start'];
$rw6end=$_POST['rw6end'];
$rw7start=$_POST['rw7start'];
$rw7end=$_POST['rw7end'];
$sql="UPDATE opening
SET start = (case when day = 'Monday' then '$rw1start'
when day = 'Tuesday' then '$rw2start'
when day = 'Wednesday' then '$rw3start'
when day = 'Thursday' then '$rw4start'
when day = 'Friday' then '$rw5start'
when day = 'Saturday' then '$rw6start'
when day = 'Sunday' then '$rw7start'
end),
SET end = (case when day = 'Monday' then '$rw1end'
when day = 'Tuesday' then '$rw2end'
when day = 'Wednesday' then '$rw3end'
when day = 'Thursday' then '$rw4end'
when day = 'Friday' then '$rw5end'
when day = 'Saturday' then '$rw6end'
when day = 'Sunday' then '$rw7end'
end)
WHERE (day in 'Monday', 'Tuesday', 'Wednesday','Thursday','Friday','Saturday','Sunday') AND res_name='$resname'";
$result=mysql_query($sql)or die ("Error");
您的更新命令不正確,此外您還有保留的列名end
。 你需要反擊它。 你已經使用了set
2次,但是在update語句中你只需要一次
update table set col1 = 'someval',col2='someval'
$sql="UPDATE opening
SET start = (
case
when day = 'Monday' then '$rw1start'
when day = 'Tuesday' then '$rw2start'
when day = 'Wednesday' then '$rw3start'
when day = 'Thursday' then '$rw4start'
when day = 'Friday' then '$rw5start'
when day = 'Saturday' then '$rw6start'
when day = 'Sunday' then '$rw7start'
end
),
`end` = (
case
when day = 'Monday' then '$rw1end'
when day = 'Tuesday' then '$rw2end'
when day = 'Wednesday' then '$rw3end'
when day = 'Thursday' then '$rw4end'
when day = 'Friday' then '$rw5end'
when day = 'Saturday' then '$rw6end'
when day = 'Sunday' then '$rw7end'
end
)
WHERE day in ('Monday', 'Tuesday', 'Wednesday','Thursday','Friday','Saturday','Sunday')
AND res_name='$resname'";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.