內蒙古java團隊

          j2se,j2ee開發組
          posts - 139, comments - 212, trackbacks - 0, articles - 65
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          MySQL中多表刪除方法【轉】

          Posted on 2013-09-24 09:32 帥子 閱讀(1638) 評論(0)  編輯  收藏 所屬分類: j2ee技術專區

            1、從MySQL數據表t1中把那些id值在數據表t2里有匹配的記錄全刪除掉

            DELETE t1 FROM t1,t2 WHERE t1.id=t2.id 或DELETE FROM t1 USING t1,t2 WHERE t1.id=t2.id

            2、從MySQL數據表t1里在數據表t2里沒有匹配的記錄查找出來并刪除掉

            DELETE t1 FROM t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL 或

            DELETE FROM t1,USING t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL

            3、從兩個表中找出相同記錄的數據并把兩個表中的數據都刪除掉

            DELETE t1,t2 from t1 LEFT JOIN t2 ON t1.id=t2.id WHERE t1.id=25

            注意此處的delete t1,t2 from 中的t1,t2不能是別名

            如:delete t1,t2 from table_name as t1 left join table2_name as t2 on t1.id=t2.id where table_name.id=25 在數據里面執行是錯誤的(MySQL 版本不小于5.0在5.0中是可以的)

            上述語句改寫成

            delete table_name,table2_name from table_name as t1 left join table2_name as t2 on t1.id=t2.id where table_name.id=25 在數據里面執行是錯誤的(MySQL 版本小于5.0在5.0中是可以的)

           

          主站蜘蛛池模板: 青龙| 嵊州市| 武隆县| 湾仔区| 二手房| 中牟县| 澎湖县| 巴林左旗| 鹤山市| 梁河县| 嘉峪关市| 洛宁县| 平安县| 奉节县| 普宁市| 大英县| 大新县| 广安市| 紫金县| 边坝县| 百色市| 绥化市| 阜平县| 山东| 玛曲县| 兴宁市| 卓资县| 博乐市| 华宁县| 灵石县| 资阳市| 黑山县| 玉屏| 常熟市| 南宁市| 布尔津县| 星子县| 南昌市| 潜江市| 南投市| 四平市|