SQL基礎語法
阿新 • • 發佈:2018-03-12
默認 delet 需要 asc 右連接 del databases union tno
命令行下命令:
進入:mysql -uroot -p 結束當前語句:分號; 或者 \g 創建數據庫:create database dbname 顯示當前數據庫:show databases 使用某數據庫:use test1 顯示當前使用數據庫的所有表:show tables 刪除數據庫:drop database test1 顯示表信息:desc tablename 刪除表:drop table tablename 修改表(新增字段):alter table tablename add newcolumn int(3) 刪除表age字段:alter table tablename drop column age 字段改名:alter table tablename change oldname newname int(4) 增:insert into emp (ename,sal) values (‘dony‘,1000) 刪:delete from emp where eanme=‘dony‘ 改:updata emp set sal=4000 where ename=‘dony‘ 查:selet * from emp
特別: distinct 將查詢的結果去重 select distinct * from emp order by 排序 asc和默認是升序 desc是降序 limit 分頁 經常跟order by一起使用 limit m,n 左開右閉區間,即(m+1,n] select * from emp order sal limit 1,3 表示查詢的結果按照sal升序並查詢第2到第3個 聚合:相關函數:sum(求和) count(計數) max(最大) min(最小) group by with rollup 是否對聚合後的結果進行再匯總 having 對分類的結果再進行過濾 where 和 having的區別就在於where是聚合前過濾,而having是聚合後過濾 內外連接查詢: 內連接,僅選擇相互匹配記錄,inner join 外連接,可以選擇不匹配記錄 外連接分左連接(left join)和右連接(right join) 左連接:左連接以左為主,查詢的結果包含全部的左表(即使右表沒有,右表記錄為null) 右連接:右連接以右為主,查詢的結果包含全部的右表(即使左表沒有,左表記錄為null) select ename from emp left join dept on dept.deptno=emp.deptno 子查詢: 查詢的結果需要用到另外一個select語句,需要用到子查詢(in,not in,=,!=,exists,not exists) 如果查詢出來的記錄數唯一,可以用=代替in 記錄聯合,兩條語句之間加上關鍵字即可 union all 直接合並在一起 union 將合並的結果進行distinct去重操作
SQL基礎語法