2023年8月3日发(作者:)
SQL排序并更新(ORDERBY)我期望的⽬标是:查找 Proxies 表中 count ⼩于10的⼀条数据,并把 count 加上1,代码如下:UPDATE Proxies SET count=count+1 WHERE count<10 ORDER BY createdAt ASC LIMIT 1;现实是⾻⼲的,运⾏发现报错了,提⽰更新不能与 ORDER BY ⼀起使⽤。解决⽅案:UPDATE "Proxies"SET "count"="count"+1WHERE "id" IN ( SELECT "Proxies"."id" FROM "Proxies" WHERE "count"<10 ORDER BY "Proxies"."createdAt" LIMIT 1)RETURNING "count",...// 或者UPDATE "Proxies"SET "count"="count"+1FROM ( SELECT "Proxies"."id" FROM "Proxies" WHERE "count"<10 ORDER BY "Proxies"."createdAt" LIMIT 1) AS tab1WHERE "Proxies"."id"=tab1."id"
2023年8月3日发(作者:)
SQL排序并更新(ORDERBY)我期望的⽬标是:查找 Proxies 表中 count ⼩于10的⼀条数据,并把 count 加上1,代码如下:UPDATE Proxies SET count=count+1 WHERE count<10 ORDER BY createdAt ASC LIMIT 1;现实是⾻⼲的,运⾏发现报错了,提⽰更新不能与 ORDER BY ⼀起使⽤。解决⽅案:UPDATE "Proxies"SET "count"="count"+1WHERE "id" IN ( SELECT "Proxies"."id" FROM "Proxies" WHERE "count"<10 ORDER BY "Proxies"."createdAt" LIMIT 1)RETURNING "count",...// 或者UPDATE "Proxies"SET "count"="count"+1FROM ( SELECT "Proxies"."id" FROM "Proxies" WHERE "count"<10 ORDER BY "Proxies"."createdAt" LIMIT 1) AS tab1WHERE "Proxies"."id"=tab1."id"
发布评论