关于mysql的update、delete、和insert into能否使用别名问题
在工作中遇到這樣一個(gè)問(wèn)題,就是mysql在insert into時(shí)能不能使用別名,大家會(huì)很奇怪為什么insert into使用別名呢?原因在于原來(lái)的項(xiàng)目中使用了user表,新項(xiàng)目要將user表拆分為user和userinfo表,在不修改原代碼的前提下,將user extends userinfo,而持久層用的是mybatis,所以寫(xiě)sql段的時(shí)候,get時(shí)要獲取user和userinfo,這樣就使用到了left join,又因?yàn)閡ser和userinfo中有些同樣的字段如uid,updatetime,status,等,所以將要取別名以是區(qū)分,所以get取別名后那些字段都要在前面家別名,這樣就導(dǎo)致update和delete還有insert into時(shí)也會(huì)使用這個(gè)sql段,這樣才有了那個(gè)需求,但是查閱了資料發(fā)現(xiàn)mysql不可以使用,所有最后解決辦法是get方法另外加一個(gè)sql段,使用了別名,而原來(lái)的幾個(gè)操作使用原來(lái)沒(méi)有加別名的sql段,這樣問(wèn)題才解決了,不知我是否敘述清楚?
最后結(jié)論:在mysql的update、delete、和insert into不能使用別名,即:insert into user as u(u.uid,u.name,u.email...) value(...)
總結(jié)
以上是生活随笔為你收集整理的关于mysql的update、delete、和insert into能否使用别名问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: maven下载其源代码包并关联
- 下一篇: MySQL单表多字段模糊查询