sql語句

sql語句中字符串一般用 單引號
sql語句是大小寫不敏感的。
光標放在最後,shift+上、下、左、右、home、end 選中一行
ctrl+shift+r 執行選中的sql語句

  • 查 select

    SELECT * FROM t_students
    有條件的查找
    SELECT Name,Salary FROM t_oa;
    列別名 —- as
    SELECT Name as 姓名,Salary as 工資 FROM t_oa;
    計算列
    SELECT Name as 姓名,Salary+1000 as 工資 FROM t_oa;
    where 查詢
    SELECT * FROM t_oa WHERE Age>25
    SELECT * FROM t_oa WHERE Age>25 or Salary>5000

  • 增 insert

    INSERT INTO t_students (Id,Gender,Name,Hobbies) values(4,1,’汪峯’,’游泳’)

  • 改 update

    修改一列:
    UPDATE t_students SET Age=30
    修改多個列:
    UPDATE t_students SET Age=33,Name=’aa’
    有條件的更新 —-where:
    UPDATE t_students SET Age=10,Name=’huihui’ WHERE Gender=0

  • 刪 delete

    有條件的刪除 — where
    DELETE FROM t_students WHERE Age=10
    刪除表中全部數據
    DELETE FROM t_students
    delete 只是刪除數據
    drop 是刪除表: drop table 表名

  • SQL聚合函數。MAX、MIN、AVG、SUM、COUNT

    聚合函數對一組值執行計算並返回單一的值。除了 COUNT 以外,聚合函數忽略空值。聚合函數經常與 SELECT 語句的 GROUP BY 子句一同使用。

    SELECT MAX(Salary) from t_oa WHERE Age<24
    別名
    SELECT MAX(Salary) as 最高工資,MIN(Salary) as 最低工資 from t_oa WHERE Age>24

  • 數據排序

    ORDER BY 子句位於SELECT語句的末尾where語句不能放在order by 的後面
    SELECT * FROM t_oa ORDER BY “Age列” ASC
    SELECT * FROM t_oa ORDER BY “salary列” desc

  • 通配符過濾

    “_” 匹配單個出現的字符,以任意字符開頭
    SELECT * FROM t_oa WHERE NAME LIKE ‘_ina’
    SELECT * FROM t_oa WHERE NAME LIKE ‘j___’

    “%” 匹配任意次數(零或多個)出現的任意字符
    SELECT * FROM t_oa WHERE NAME LIKE ‘o%’ //o開頭的
    SELECT * FROM t_oa WHERE NAME LIKE ‘%n%’ //包含n的

    LIKE 性能較差,很容易造成全表掃描,謹慎使用。

  • 空值處理

    null=> 表示”不知道”
    SELECT * FROM t_oa WHERE NAME IS NULL //name 爲空的數據
    SELECT * FROM t_oa WHERE NAME IS NOT NULL //name 不爲空的數據

  • limit

    limit 一定放到所有的語句後面。如果有order by,limit 要放在order by 後面
    SELECT * FROM t_oa LIMIT 2,4 //從第二行開始,取4調數據

  • group by 分組

    SELECT * FROM t_oa GROUP BY age //年齡相同的分爲一組
    SELECT age,AVG(salary),MIN(salary)FROM t_oa GROUP BY age
    SELECT age,COUNT(*) FROM t_oa GROUP BY age

  • 聯合查詢 : join – 表連接

    最廣泛的是left join (等值連接)

    A表tid 與 B表的id 相關聯 ,A表name 與 B表的name 相關聯
    省略了as
    SELECT s.tid A_ID,o.id B_ID,s.name A姓名,o.name B姓名
    FROM t_students s //省略了as
    LEFT JOIN t_oa o //省略了as
    ON s.tid=o.id

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章