我用得是 PostgreSQL,生成了下面得两个 SQL 语句。我遇到很郁闷得问题就是我运行完了第一条语句,运行第二条语句却发现得出得 coupon 并没有设置 popluar。也就是说同样得一条 SQL 得出的顺序却是不一样的(设置了 order by)。请问下我有什么地方遗漏了吗?
UPDATE "coupons" SET "popular" = 't' WHERE "coupons"."id" IN (SELECT "coupons"."id" FROM "coupons" ORDER BY user_coupons_count DESC LIMIT 1)
SELECT "coupons".* FROM "coupons" ORDER BY user_coupons_count DESC LIMIT 1