日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL学习笔记——20170811

發布時間:2024/1/8 数据库 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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', '張三', '專科', '男', '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', '將干', '專科', '男', '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 a.*,b.* FROM joinTest a RIGHT JOIN joinTest b on a.id=b.id;

正則表達式

例子:

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的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。