也许是这样的:
UPDATE favorites A INNER JOIN
(
SELECT favoritesid FROM favorites WHERE email='$email'
ORDER BY favoritesid LIMIT x
) B USING (favoritesid)
SET
A.category='$newcat',
A.subcategory='$newsubcat',
A.sitename='$newwebsitename',
A.url='$newwebsiteurl'
;
这里是另一种选择:
UPDATE favorites A
SET
A.category='$newcat',
A.subcategory='$newsubcat',
A.sitename='$newwebsitename',
A.url='$newwebsiteurl'
WHERE A.favoritesid =
(
SELECT MAX(favoritesid) FROM favorites WHERE email='$email'
ORDER BY favoritesid LIMIT x
);
这些例子假设OFFSET 0。如果你心里有一个偏移,试试这个:
UPDATE favorites A INNER JOIN
(
SELECT favoritesid FROM favorites WHERE email='$email'
ORDER BY favoritesid LIMIT x OFFSET $myoffset
) B USING (favoritesid)
SET
A.category='$newcat',
A.subcategory='$newsubcat',
A.sitename='$newwebsitename',
A.url='$newwebsiteurl'
;
那么你真的想用'OFFSET'做什么。根据autoincrement id从一行更新到相邻行? – 2012-09-14 21:17:04