MySQL聯表查詢及聯表刪除的方法

2022-09-07 06:03:11 字數 1287 閱讀 1958

mysql聯表查詢及聯表刪除都是經常需要用到的操作,下面對mysql聯表查詢和聯表刪除都作了詳細的介紹分析,希望對您有所幫助。

mysql聯表查詢:

reference mysql manul:

3.2.7. select語法13.2.7.1. join語法

13.2.7.2. union語法

eg1:·mysql> select t1.name, t2.salary from employee as t1, info as

t2·->    where t1.name = t2.name;eg2:·mysql> select table1.* from

table1·->        left join table2 on

table1.id=table2.id·->        where table2.id is null;

聯表刪除:

1、從資料表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、從資料表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中是可以的)

MySQL聯表查詢

顯示所有員工名字 emp.ename 員工工資 emp.sal 及所在部門的名字 dept.dname 笛卡爾積 emp num dept num 聯表查詢時一定要帶上關聯條件 select ename,sal,dname from emp,dept where emp.deptno dept.de...

mysql的聯表刪除

聯表刪除 1 從資料表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 從資料表t1裡在資料表t2裡沒有匹配的記錄查詢...

zf聯表查詢

zf支援聯表查詢,並且會經常遇到聯表查詢,具體 寫法如下 select this select select from this name,array id name select distinct select joinleft jobname,jobname.enterprise id this...