MySQL学习笔记——20170811
生活随笔
收集整理的這篇文章主要介紹了
MySQL学习笔记——20170811
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
部分函數
- LTRIM() -> 去除左邊空格 RTRIM() 去除右邊空格
- ROUND() -> 四舍五入
- LENGTH() -> 獲取字符串長度
- UPPER() -> 大寫顯示 LOWER 小寫顯示
- REPLACE(‘hello’,‘h’,‘w’) -> 替換
- INSERT(,)
- INSTR(‘hello’,‘e’) -> 返回e在hello中的位置 2
- CONVERT(value,type) -> 類型轉換
- LEFT(‘hello’,1) RIGHT()
- SQRT(16) -> 取16的平方根
- ABS() -> 絕對值
- DAYNAME() 星期幾 DAYOFMONTH() 一月中的第幾天 DAYOFWEEK() DAYOFYEAR()
- YEAR() MONTH()
- DATE_ADD(‘1990-01-01’, INTERVAL 1 DAY) -> 添加1天
練習
CREATE TABLE employees (EmployeeID int(6) PRIMARY KEY NOT NULL,eName char(10) NOT NULL,Education char(4) NOT NULL,Gender char(2) NOT NULL DEFAULT '',Workyear int(11) DEFAULT NULL,dpart_id int(3) NOT NULL,tel varchar(10),eBirth date ) ENGINE=InnoDB CHARSET=utf8;INSERT INTO employees VALUES ('1', '張三', '???#39;, '男', '2', '1','023-12315','1992-01-01'); INSERT INTO employees VALUES ('2', '李四', '本科', '男', '1', '1','023-23445','1995-02-02'); INSERT INTO employees VALUES ('3', '王五', '高中', '男', '3', '1','023-22423','1993-02-15'); INSERT INTO employees VALUES ('4', '李強', '專科', '男', '3', '5','023-24254','1982-11-25'); INSERT INTO employees VALUES ('5', '將干', '???#39;, '男', '1', '5','023-13134','1998-11-03'); INSERT INTO employees VALUES ('6', '項棋', '本科', '女', '4', '2','023-52435','1992-12-18'); INSERT INTO employees VALUES ('7', '安和', '研究生', '女', '3', '3','023-46352','1999-03-19'); INSERT INTO employees VALUES ('8', '動力', '研究生', '女', '4', '4','023-23456','1994-04-17'); INSERT INTO employees VALUES ('9', '李安', '本科', '男', '8', '3','023-12345','1993-07-16'); INSERT INTO employees VALUES ('10', '向前看', '高中', '男', '0', '5','023-42567','1991-08-25'); INSERT INTO employees VALUES ('11', '萬精油', '高中', '男', '1', '4','023-24986','1991-09-22'); INSERT INTO employees VALUES ('12', '高琪琪', '研究生', '女', '2', '1','023-23561','1992-12-25'); INSERT INTO employees VALUES ('13', '李珊珊', '本科', '女', '4', '2','023-23567','1995-11-20'); INSERT INTO employees VALUES ('14', '張安', '本科', '男', '2', '3','023-33345','1997-04-05'); INSERT INTO employees VALUES ('15', '李六', '本科', '男', '10', '3','023-23256','1997-05-05'); INSERT INTO employees VALUES ('16', '余四', '高中', '女', '1', '5','023-23568','1998-06-05'); INSERT INTO employees VALUES ('17', '周悅', '本科', '女', '2', '3','023-32566','1991-07-19'); INSERT INTO employees VALUES ('18', '周大七', '本科', '男', '2', '2','023-65324','1982-12-18'); INSERT INTO employees VALUES ('19', '牌牌琦', '研究生', '女', '5', '2','023-32152','1992-01-17'); INSERT INTO employees VALUES ('20', 'Tom', '本科', '男', '1', '1','023-77777','1995-01-05'); INSERT INTO employees VALUES ('21', 'Mike', '研究生', '男', '4', '2','023-88888','1982-03-04'); INSERT INTO employees VALUES ('22', 'Angela', '本科', '女', '1', '3','023-22222','1992-04-13'); INSERT INTO employees VALUES ('23', 'An Penny', '本科', '女', '2', '3','023-33333','1996-04-05'); INSERT INTO employees VALUES ('24', '安佩妮', '研究生', '女', '3', '3','023-44444','1998-05-12'); INSERT INTO employees VALUES ('25', '周安安', '研究生', '女', '5', '2','023-66666','1998-05-11');-- 1、查詢員工信息,查詢結果要求每個員工的'姓'都用‘e’代替 SELECT EmployeeID,INSERT(eName,1,1,'e'),Education,Gender,Workyear,dpart_id,tel,eBirth FROM employees;-- 2、查詢名叫An Penny的員工,‘n’這個字符在她的名字里總共出現了幾次 SELECT eName,LENGTH(eName)-LENGTH(REPLACE(eName,'n','')) FROM employees WHERE eName = 'An Penny'; -- 3、查詢所有員工的姓名,要求姓名里包含‘三’,‘四’,‘五’幾個字的去掉;如:張三,則輸出張 SELECT REPLACE(REPLACE(REPLACE(eName,'三',''),'四',''),'五','') FROM employees;-- 3、查詢員工電話號碼,要求結果電話號碼去除‘-’ SELECT REPLACE(tel,'-','') FROM employees;-- 4、查詢員工電話號碼,將區號和電話號碼分別兩列顯示 SELECT LEFT(tel,INSTR(tel,'-')-1),RIGHT(tel,LENGTH(tel)-INSTR(tel,'-')) FROM employees;-- 5、統計6月份出生的有多少人 SELECT COUNT(EmployeeID) FROM employees WHERE MONTH(eBirth)=6;-- 6、查詢星期三出生員工信息 SELECT * FROM employees WHERE DAYNAME(eBirth)='Wednesday';-- 7、查詢員工入職不超過1年的員工 SELECT * FROM employees WHERE Workyear<1;-- 8、查詢在周五出生的員工 SELECT * FROM employees WHERE DAYNAME(eBirth)='Friday';-- 9、將員工張三的出生日期分別按‘年’‘月’‘日’三列輸出 SELECT eName,YEAR(eBirth) '年',MONTH(eBirth) '月',DAY(eBirth) '日' FROM employees WHERE eName='張三';-- 10、根據員工張三的出生日期,查詢2個月后的時間 SELECT DATE_ADD(eBirth, INTERVAL 2 MONTH) FROM employees WHERE eName='張三';多表查詢
- INNER JOIN
- LEFT JOIN
- RIGHT JOIN
- CROSS JOIN
- UNION
正則表達式
例子:
SELECT name FROM person WHERE name REGEXP '^張'; -- 查詢以'張'開頭的 SELECT name FROM person WHERE name REGEXP '張$'; -- 查詢以'張'結尾的 SELECT name FROM person WHERE name REGEXP '[a-zA-Z]'; -- 查詢包含英文字母的總結
以上是生活随笔為你收集整理的MySQL学习笔记——20170811的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pyppeteer 模拟登录淘宝H5,获
- 下一篇: 安全连接方式SSL