sql语句如何写?有一个表table 里面有A,B,C,D四个字段

sql语句如何写?有一个表table 里面有A,B,C,D四个字段
假设表里面有10条数据,字段A为自增的id,B为标题,C为短标题,D为空字段.其中前5条数据(条件已知)标题为空,短标题有数据,后5条短标题为空,标题已知,现在我想把后五条的A字段的值存进前5条的D字段里面去,条件是前五条的C(短标题)=后五条的B(标题),这个SQL如何写啊
说得更明白一点,假设还有个字段E,前五条的值是1,后五条的值是2
小蚂蚁皮皮 1年前 已收到1个回答 举报

蓝雨磷磷 幼苗

共回答了16个问题采纳率:87.5% 举报

数据库是基于集合论的,表中记录是无序的,象数组那样对位拷贝很麻烦的
只能提个建议,对着后五条和前五条同时循环并对位更新,这个比较容易
如果只是根据短标题与标题对应,这个可以
update 表 t1 set D=(select A from 表 t2 where t2.标题=t1.短标题)

1年前 追问

2

小蚂蚁皮皮 举报

UPDATE a SET a.D=b.A from `table` a left join (select * from `table` where E=2) b on b.B=a.C 㿴£д

举报 蓝雨磷磷

дӦ Ҳ UPDATE `table` a, `table' b SET a.D=b.A where b.E=2 and b.B=a.C awhereԼ

小蚂蚁皮皮 举报

м뷨ѾˡǸ `table` b Ҫһ£ij (select * from table where E=2) bǸûָˡ
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.029 s. - webmaster@yulucn.com