select sum(vt.vote_value), vt.item_name
from Votes vt
join stories st on st.id = vt.item_name
and st.showing = 0
group by vt.item_name
Điều này sẽ cung cấp cho bạn tất cả các bài báo có hiển thị 0 và tổng giá trị phiếu bầu. Sau đó, bạn có thể xử lý chúng theo từng hàng và cập nhật biểu quyết nếu cần.
Đã thêm:Tôi không phải là một lập trình viên PHP, tôi chủ yếu làm PERL, nhưng tôi đoán nó phải như thế này:
<?php
$query = "select sum(vt.vote_value) as vote_value, vt.item_name from Votes vt join stories st on st.id = vt.item_name and st.showing = 0 group by vt.item_name";
$result = mysql_query($query);
while($row = mysql_fetch_array($result))
{
if($row['vote_value'] > 9) {
$showing = 1;
}
else if($row['vote_value'] < -9) {
$showing = 2;
}
else {
$showing = 0;
}
$query2 = "UPDATE `stories` SET `showing` = $showing WHERE `id` = '".$row['item_name']."'";
mysql_query($query2);
}
?>