0

ページにすべての結果を表示するために使用する SELECT クエリを実行した後、すべての shots.views int 列を +1 で UPDATE したいと考えています。つまり、これらの結果が表示されるたびに、その shots.views も更新されます。

これを最善の方法と少しの例で行うにはどうすればよいと思いますか? もちろん、クエリの量を制限したいと思います。私は今少し無知です。前もって感謝します!

$query = mysql_query("
SELECT 
shots.id,
shots.large, 
shots.title,
shots.datetime 

FROM notifications

INNER JOIN shots

ON notifications.target = shots.id

WHERE notifications.uid = (SELECT id FROM users WHERE username ='$username') AND (notifications.type = 'picture' OR notifications.type = 'video' OR notifications.type = 'reshot')

ORDER BY datetime DESC

") or die(mysql_error());
4

2 に答える 2

1

実際には何も返さないためUPDATE、2 つのクエリを使用することに固執していると思います。しかし、それは崇高な目標でした!

于 2012-09-18T22:18:46.173 に答える
0
SELECT value FROM counters WHERE id = 1 FOR UPDATE;
UPDATE counters SET value = value + 1 WHERE id = 1;

それがあなたが探しているものです:)

于 2012-09-18T22:21:08.977 に答える