1.使用union 或者union all 的時候 查詢 列數必須是一致的,不一致需要使用null 進行補全
2.with 語句的意思是 在查詢期間為查詢建立乙個臨時的view 這個view值只在查詢期間有效,查詢完畢之後立馬消失
3.inner join left join right join full join 的區別
inner join:返回的結果是兩邊表同事存在的結果才會返回, inner join 除了使用 on 寫法之外 還能直接使用where 語句
例如: welect a. name,a.age b.departno,b.sal where a.id=b.userid 這樣也可以 等同於 inner join
left join: 返回的結果只是 以左邊的表為準則.將返回左邊表的 所有符合條件的結果,並且右邊表如果沒有結果的話會用空資料補全
right join:與left join相反
full join :兩邊的表相匹配的會展示在同一行,不匹配的各自顯示
4.自關聯,把自己查詢兩次當成不同的表.起不同的別名,然後可以進行join 查詢即可
5.與空值比較之後得到的結果還是空
coalesce ( expression,value1,value2……,valuen) coalesce()函式的第乙個引數expression為待檢測的表示式,而其後的引數個數不定。
coalesce()函式將會返回包括expression在內的所有引數中的第乙個非空表示式。如果
expression不為空值則返回expression;否則判斷value1是否是空值,如果value1不為空值則返
回value1;否則判斷value2是否是空值,如果value2不為空值則返回value3;……以此類推,
如果所有的表示式都為空值,則返回null。
mysql的多表操作 MySQL多表操作
交叉連線 交叉連線 cross join 又稱笛卡爾連線 cartesian join 或叉乘 product 它是所有型別內連線的基礎。它把表看作是行記錄的集合,交叉連線即返回這兩個集合的笛卡爾積。這其實等價於內連線的連線條件始終為 真 或連線條件不存在。笛卡爾積引用自數學,在數學中,兩個集合x和...
oracle多表插入
發表 csdn 日期 20090828 在oracle中關於多表插入的有四種分別是 1.無條件的多表insert all 2.帶條件的多表insert all 3.帶條件的多表insert first 4 pivoting insert 語法 insert all first when condit...
Oracle 多表查詢
sql 外連線 sql 按部門統計員工人數 部門號 部門名稱 人數 sql select d.deptno,d.dname,count e.empno 2 from dept d,emp e 3 where d.deptno e.deptno 4 group by d.deptno,d.dname ...