1. 程式人生 > >軟件測試培訓第14天

軟件測試培訓第14天

having 聚合函數 sql 邏輯運算 atime var 添加 tab null

今天的課程是就Mysql數據庫進行了更進一步的練習與講解,通過自己創建數據表並且添加數據從而進行更復雜的查詢練習,對數據庫的內容也慢慢有了一些了解:

MySql數據類型
整型(int)小數(decimal(8,2))
字符串(varchar)
日期(data、datatime)

創建student、course、sc表的步驟:

create table student( student_no varchar(20) primary key, student_name varchar(20), sex varchar(10), birthday date, department varchar(20) );

create table course( course_no varchar(20) primary key, course_name varchar(20), previous_no varchar(20), credit int );

create table sc( student_no varchar(20), course_no varchar(20), grade decimal(8,2) );

查詢的聚合函數:count(),max(),min(),sum(),avg()

查詢學生總人數。

count(*) count(字段) count(distinct 字段)

select count(*) from student;

查詢選修了課程的學生的人數。

select count(distinct student_no) from sc;

計算課程編號為“206”的學生的平均成績

select avg(grade) from sc where course_no=‘206‘;

計算課程編號為“206”的學生的最高分。

select max(grade) from sc where course_no=‘206‘;

查詢選修了2門課程以上的學生的學號(having)

select student_no,count(course_no) from sc group by student_no having count(course_no)>2;

==多表查詢(笛卡爾積)

left join right join

查詢雇員編號、雇員姓名、所在部門編號、部門名稱

1.select t1.empno,t1.ename,t2.deptno,t2.dname
from emp t1 inner join dept t2 using(deptno);

2.select t1.empno,t1.ename,t2.deptno,t2.dname
from emp t1 left join dept t2 using(deptno);

3.select t1.empno,t1.ename,t2.deptno,t2.dname
from emp t1 right join dept t2 using(deptno);

SQL功能 動詞
數據查詢 select
數據定義 create,drop,alter
數據操縱 insert,update,delete
數據控制 grant,revoke

關系運算:>,=,<,>=,>=,!=(<>)
範圍運算:between...and;
空判斷:is null,is not null;
IN判斷:in,not in,exists(復雜查詢)
模糊查詢:like,not like
邏輯運算 and與 or或 not非

顯示所有數據庫 show databases

創建數據庫 create database emp_dept;

刪除數據 drop database emp_dept;

使用數據庫 use {databaseName};

查看所有的表 show tables;

查詢(增刪改查)
select * from emp;
select * from dept;

軟件測試培訓第14天