我有一个包含4列ID,PLZ(德国邮政编码),long和lat的表
CREATE TABLE `table` (
`ID` INT(5) UNSIGNED NULL,
`idnew` INT(5) UNSIGNED NULL,
`PLZ` INT(5) UNSIGNED NULL,
`lat` INT(5) UNSIGNED NULL,
`long` INT(5) UNSIGNED NULL
)
COLLATE='utf8'
当我使用INSERT添加邮政编码时,新的邮政编码将添加到ID最高的表格末尾。
这破坏了PLZ邮政编码的升序。
如果我跑步:
SELECT RANK() Over (ORDER BY plz) As idnew , plz, long, lat FROM `table`;
我收到一个虚拟表,其中的虚拟列“ idnew”按顺序递增。这个idnew与我表中的“ idnew”无关。
问题来了:“我现在如何用新的虚拟idnew列更新旧的idnew列?”
P.S。不要告诉我我很愚蠢;-)我已经知道了。