最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql中You can’t specify target table for update in FROM clause錯(cuò)誤解決方法

 更新時(shí)間:2015年02月09日 10:50:43   投稿:junjie  
這篇文章主要介紹了mysql中You can’t specify target table for update in FROM clause錯(cuò)誤解決方法,需要的朋友可以參考下

mysql中You can't specify target table for update in FROM clause錯(cuò)誤的意思是說,不能先select出同一表中的某些值,再update這個(gè)表(在同一語(yǔ)句中)。 例如下面這個(gè)sql:

復(fù)制代碼 代碼如下:

delete from tbl where id in
(
        select max(id) from tbl a where EXISTS
        (
            select 1 from tbl b where a.tac=b.tac group by tac HAVING count(1)>1
        )
        group by tac
)

改寫成下面就行了:

復(fù)制代碼 代碼如下:

delete from tbl where id in
(
    select a.id from
    (
        select max(id) id from tbl a where EXISTS
        (
            select 1 from tbl b where a.tac=b.tac group by tac HAVING count(1)>1
        )
        group by tac
    ) a
)

也就是說將select出的結(jié)果再通過中間表select一遍,這樣就規(guī)避了錯(cuò)誤。注意,這個(gè)問題只出現(xiàn)于mysql,mssql和oracle不會(huì)出現(xiàn)此問題。

相關(guān)文章

最新評(píng)論

新绛县| 香格里拉县| 文登市| 锡林郭勒盟| 六盘水市| 紫阳县| 扶余县| 绥芬河市| 衡南县| 德阳市| 丹江口市| 喜德县| 景洪市| 凤山县| 淮滨县| 义马市| 梨树县| 玉龙| 阿克| 西盟| 新兴县| 宁安市| 贺兰县| 卓尼县| 康马县| 台山市| 鄂托克旗| 昭通市| 资溪县| 无为县| 伊宁市| 宜春市| 吉林省| 灵川县| 鄯善县| 新干县| 策勒县| 佳木斯市| 石阡县| 迁西县| 台州市|