我明白为什么这是有问题的,但似乎无法像 SO 上的其他人那样解决问题..
我不想使用子查询来增加票号。不能使用 auto_inc,因为已经有一个 auto_inc'ing 主键..
这是我想做的:
UPDATE tickets SET tickets.ticket_number=(
SELECT (MAX(ticket_number)+1) FROM tickets
) WHERE ticket_id=12345;
给我:您不能在 FROM 子句中指定要更新的目标表 'tickets'
谢谢!
最佳答案
如果我错了请纠正我,但这是你想要达到的结果吗?:
UPDATE tickets SET tickets.ticket_number=(
SELECT max_ticket FROM (
SELECT (MAX(ticket_number)+1) AS max_ticket FROM tickets ) AS sub_table)
WHERE ticket_id=12345;
关于Mysql:在同一张表上进行子查询更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17530036/