完整語法格式:sql
MySQL支持的運算符:數據庫
like 通配符和佔位符: % _ (模糊查詢)函數
-- 查詢全部的老師信息 select * from teacher; -- 查詢id 大於2的老師信息 select * from teacher where id>2; -- 查詢姓名爲空的老師信息 在數據庫中null永遠都不等於null,那麼怎麼去判斷null值?經過 is null / is not null -- select * from teacher where name=null; # 錯誤 select * from teacher where name is not null; -- 查詢id爲1 而且 姓名是 "xiaosi"的老師信息 select * from teacher where id=1 and name='xiaosi'; -- 查詢id爲1 而且 姓名是 "xiaosi"的老師信息 select * from teacher where id=1 or name='xiaosi'; -- 查詢薪水在2000到10000之間的老師信息 select * from teacher where sal >=2000 and sal <=10000; select * from teacher where sal between 2000 and 10000; # 這種方式等同於上面 -- 查詢姓名中有 ‘塵’ 字的老師信息 select * from teacher where name like '%塵%'; -- 查詢姓名是三個字的 select * from teacher where name like '___'; -- 查詢姓 '小' 的老師信息 select * from teacher where name like '小%'; -- 查詢名字中含有下劃線的老師信息 '\' 轉義 -- select * from teacher where name like '%_%'; # 錯誤 select * from teacher where name like '%\_%';
語法格式:code
通常狀況分組查詢結合聚合函數一塊兒使用排序
-- 查詢每一個部門的平居薪資 # select * from teacher GROUP BY dname # 記住:分組的正確使用方式,group by 後面沒有出現的列名不能出如今select 和from 的中間, # 雖然不報錯,可是不是分組的正確使用方式 # 聚合函數中出現的列名group by後面沒有無所謂 select dname from teacher GROUP BY dname; select dname, avg(sal) from teacher GROUP BY dname;
語法格式:索引
-- 查詢老師信息,根據薪資進行排序,要求從大到小進行排序 select * from teacher order by sal desc; # 根據sal進行降序排序 select * from teacher order by sal asc; # 根據sal進行升序排序 select * from teacher order by sal; # 根據sal進行升序排序, 利用默認排序
編號 商品名稱 商品價格 操做
1 玩具娃娃 100.0 刪除 修改
2 玩具汽車 200.0 刪除 修改
3 玩具飛機 300.0 刪除 修改
................................
首頁 上一頁 1 2 3 4 5 下一頁 尾頁事務
語法格式it
分頁(每頁顯示兩條數據) 第一頁:select * from teacher limit 0,2; 第二頁:select * from teacher limit 2,2; 第三頁:select * from teacher limit 4,2; 第四頁:select * from teacher limit 6,2; 第五頁:select * from teacher limit 8,2;
分頁公式:io
-- 每頁顯示3條 -- 顯示第二頁 select * from teacher limit 3,3;
select * from teacher; # 查詢表中全部字段記錄 select name, sal, dname from teacher; # 查詢表中指定字段記錄 -- 給查詢的字段設置別名 同時也能夠給表設置別名 經過as 關鍵字實現別名 select name as '姓名', sal '薪資', dname '部門名稱' from teacher
MySQL事務默認自動開啓的
事務必須知足4個條件(ACID):table
create table student( id int, name varchar(32), age int, money double ); insert into student values(1, '老王', 18, 60000); select * from student; rollback;
手動關閉事務提交語法:
set autocommit = false; # 設置事務手動提交 select * from student; delete from student where id=1; # 刪除id爲1 的信息 rollback; # 事務回滾 commit; # 事務提交 update student set money = money-30000 where id=1; savepoint t1; # 設置事務節點 update student set money = money-20000 where id=1; rollback to t1; # 回滾到t1節點位置 commit; # 事務提交