1. 程式人生 > 其它 >RBAC、xadmin與Book系列多表群操作

RBAC、xadmin與Book系列多表群操作

  在此,先準備測試資料,程式碼如下:
  
  -- 建立資料庫
  
  DROP DATABASE IF EXISTS mydb;
  
  CREATE DATABASE mydb;
  
  USE mydb;
  
  -- 建立student表
  
  CREATE TABLE student (
  
  sid CHAR(6),
  
  sname VARCHAR(50),
  
  age INT,
  
  gender VARCHAR(50) DEFAULT 'male'
  
  );
  
  -- 向student表插入資料
  
  INSERT INTO student (sid,sname,age,gender) VALUES ('S_1001', 'lili', 14, 'male');
  
  INSERT INTO student (sid,sname,age,gender) VALUES ('S_1002', 'wang', 15, 'female');
  
  INSERT INTO student (sid,sname,age,gender) VALUES ('S_1003', 'tywd', 16, 'male');
  
  INSERT INTO student (sid,sname,age,gender) VALUES ('S_1004', 'hfgs', 17, 'female');
  
  INSERT INTO student (sid,sname,age,gender) VALUES ('S_1005', 'qwer', 18, 'male');
  
  INSERT INTO student (sid,sname,age,gender) VALUES ('S_1006', 'zxsd', 19, 'female');
  
  INSERT INTO student (sid,sname,age,gender) VALUES ('S_1007', 'hjop', 16, 'male');
  
  INSERT INTO student (sid,sname,age,gender) VALUES ('S_1008', 'tyop', 15, 'female');
  
  INSERT INTO student (sid,sname,age,gender) VALUES ('S_1009', 'nhmk', 13, 'male');
  
  INSERT INTO student (sid,sname,age,gender) VALUES ('S_1010', 'xdfv', 17, 'female');
  mysql安裝:

http://down.cuohei.com/
  1.聚合函式
  
  在開發中,我們常常有類似的需求:統計某個欄位的最大值、最小值、 平均值等等。為此,MySQL中提供了聚合函式來實現這些功能。所謂聚合,就是將多行彙總成一行;其實,所有的聚合函式均如此——輸入多行,輸出一行。聚合函式具有自動濾空的功能,若某一個值為NULL,那麼會自動將其過濾使其不參與運算。
  
  聚合函式使用規則:
  
  只有SELECT子句和HAVING子句、ORDER BY子句中能夠使用聚合函式。例如,在WHERE子句中使用聚合函式是錯誤的。
  
  接下來,我們學習常用聚合函式。
  
  1.1、count()
  
  統計表中資料的行數或者統計指定列其值不為NULL的資料個數
  
  查詢有多少該表中有多少人
  
  MySQL命令:
  
  select count(*) from student;
  
  1.2、max()
  
  計算指定列的最大值,如果指定列是字串型別則使用字串排序運算
  
  查詢該學生表中年紀最大的學生
  
  MySQL命令:
  
  select max(age) from student;
  
  1.3、min()
  
  計算指定列的最小值,如果指定列是字串型別則使用字串排序運算
  
  查詢該學生表中年紀最小的學生 MySQL命令:
  
  select sname,min(age) from student;
  
  1.4、sum()
  
  計算指定列的數值和,如果指定列型別不是數值型別則計算結果為0
  
  查詢該學生表中年紀的總和 MySQL命令:
  
  select sum(age) from student;
  
  1.5、avg()
  
  計算指定列的平均值,如果指定列型別不是數值型別則計算結果為
  
  查詢該學生表中年紀的平均數 MySQL命令:
  
  select avg(age) from student;
  
  2.其他常用函式
  
  這裡我就不一一舉例了,基本混個眼熟,以後用到再細說
  
  2.1、時間函式
  
  SELECT NOW();
  
  SELECT DAY (NOW());
  
  SELECT DATE (NOW());
  
  SELECT TIME (NOW());
  
  SELECT YEAR (NOW());
  
  SELECT MONTH (NOW());
  
  SELECT CURRENT_DATE();
  
  SELECT CURRENT_TIME();
  
  SELECT CURRENT_TIMESTAMP();
  
  SELECT ADDTIME('14:23:12','01:02:01');
  
  SELECT DATE_ADD(NOW(),INTERVAL 1 DAY);
  
  SELECT DATE_ADD(NOW(),INTERVAL 1 MONTH);
  
  SELECT DATE_SUB(NOW(),INTERVAL 1 DAY);
  
  SELECT DATE_SUB(NOW(),INTERVAL 1 MONTH);
  
  SELECT DATEDIFF('2019-07-22','2019-05-05');
  
  2.2、字串函式
  
  --連線函式
  
  SELECT CONCAT ()
  
  --
  
  SELECT INSTR ();
  
  --統計長度
  
  SELECT LENGTH();
  
  2.3、數學函式
  
  -- 絕對值
  
  SELECT ABS(-136);
  
  -- 向下取整
  
  SELECT FLOOR(3.14);
  
  -- 向上取整
  
  SELECT CEILING(3.14);