1. 程式人生 > 其它 >MySQL學習01(查詢select)

MySQL學習01(查詢select)

MySQL

概念:一種關聯資料庫,可以儲存並且操作應用程式中的所有資料

DB(Database):資料庫軟體

DBMS( Database Management System ):資料庫作業系統

SQL( Structured Query Language ):結構化查詢語言,資料庫的操作語言,包含一套標準的SQL,可以用於操作所有資料庫。每個資料庫都有自己的方言,只能在自己資料庫使用,不能在別的資料庫使用

DBA:資料庫管理員,專門操作資料庫軟體的人員

學習方式:會用就行,不需要理解原理

版本:5.5 8.4等

埠號:3306

-u 使用者名稱 -p 密碼

基本命令

mysql軟體有4個自帶的資料庫,不能動,庫裡面存的是一張張的表

表裡面存的就是資料

資料查詢語言:select

資料操縱語言:insert,delete,update

資料定義語言:create,drop,alter

事務控制語言:commit,rollback

資料控制語言:grant,revoke

特殊欄位empno(元件),不能重複,不能為空


庫操作:

show databases; 檢視所有的庫

create database 庫名; 建立一個庫

drop database 庫名; 刪除一個庫

use 庫名; 使用(選中)一個庫

show tables; 檢視所有的表


表操作:

操作之前要選中一個數據庫

欄位:每一列

記錄:每一行

匯入外部的sql檔案:source+檔案路徑

select*from 表名; 查詢表

一、簡單查詢

select 欄位名稱 from 表名 控制的是欄位數

(1)查詢單個欄位 select ename(欄位名稱) from emp(表名);

(2)查詢多個欄位 select ename,sal(用逗號隔開欄位) from emp;

(3)所有欄位 select*from emp;也可以把所有欄位都寫出來

(4)為欄位新增別名 as 關鍵字 可以省略select ename(欄位名) as '姓名' from emp;select ename '姓名' from emp;

二、條件查詢

where關鍵字 位置在from之後

select*from emp

where ename='SMITH'; =表示相等不是賦值

!=或<> 表示不等

區間表示:between...and... between之後的數值小於等於and之後的數值 必須做小右大

is null 某個欄位的數值為null值

is not null 某個欄位的數值不為null值

and 並且,等於&& 滿足所有條件

select * from emp where deptno=30 and sal>2000;

or 或者,等於|| 滿足一個條件

連線符存在and和or一起使用,需要新增()

in 用於條件中的一些常量的比較,可以被多個or替換

select * from emp where sal in(800,1000,1500,2000) 類似swtch

not in 多個and替換

like 模糊查詢(關鍵字查詢),條件中匹配一部分內容即可,不可是常量

例如,搜尋姓張的人

_ 表示一個位置上的任意內容

% 表示任意位置上的任意內容

select*from emp where ename like 'A%';

包含查詢:%A%

三、排序查詢

關鍵字:order by 位置暫時是在where之後

升序排序:預設排序 關鍵字是asc,可以省略

降序排序:關鍵字是desc,不能省略

select*from emp where sal>2000 order by sal asc;

如果兩個欄位值相同,就引入下一個排序,語法:

select*from emp where sal>2000 order by sal asc,ename asc;用逗號隔開

四、聚合函式/多行處理函式

sum()求和 avg()平均數 max()最大值 min()最下值 count()計數

位置:關鍵字select 之後 關鍵字heving之後

語法:

select sum(sal) from emp; //計算欄位sal的和,一般不會在使用聚合函式的時候加別的欄位

count() 用來統計一張表的記錄大小,不計數字段值為null的欄位;

語法:select count(*) from emp; //執行效率低

或者 select count(empno) from emp;

聚合函式可以一起使用,語法:

select sum(sal) '和',avg(sal) '平均數',max(sal) '最大值',min(sal) '最小值',count(empno) '個數' from emp;

MySQL

概念:一種關聯資料庫,可以儲存並且操作應用程式中的所有資料

DB(Database):資料庫軟體

DBMS( Database Management System ):資料庫作業系統

SQL( Structured Query Language ):結構化查詢語言,資料庫的操作語言,包含一套標準的SQL,可以用於操作所有資料庫。每個資料庫都有自己的方言,只能在自己資料庫使用,不能在別的資料庫使用

DBA:資料庫管理員,專門操作資料庫軟體的人員

學習方式:會用就行,不需要理解原理

版本:5.5 8.4等

埠號:3306


-u 使用者名稱 -p 密碼

基本命令

mysql軟體有4個自帶的資料庫,不能動,庫裡面存的是一張張的表

表裡面存的就是資料

資料查詢語言:select

資料操縱語言:insert,delete,update

資料定義語言:create,drop,alter

事務控制語言:commit,rollback

資料控制語言:grant,revoke

特殊欄位empno(元件),不能重複,不能為空


庫操作:

show databases; 檢視所有的庫

create database 庫名; 建立一個庫

drop database 庫名; 刪除一個庫

use 庫名; 使用(選中)一個庫

show tables; 檢視所有的表


表操作:

操作之前要選中一個數據庫

欄位:每一列

記錄:每一行

匯入外部的sql檔案:source+檔案路徑select*from 表名; 查詢表

一、簡單查詢

select 欄位名稱 from 表名 控制的是欄位數

(1)查詢單個欄位 select ename(欄位名稱) from emp(表名); (2)查詢多個欄位 select ename,sal(用逗號隔開欄位) from emp;(3)所有欄位 select*from emp;也可以把所有欄位都寫出來(4)為欄位新增別名 as 關鍵字 可以省略select ename(欄位名) as '姓名' from emp;select ename '姓名' from emp;

二、條件查詢

where關鍵字 位置在from之後

select*from emp where ename='SMITH'; =表示相等不是賦值

!=或<> 表示不等

區間表示:between...and... between之後的數值小於等於and之後的數值 必須做小右大

is null 某個欄位的數值為null值

is not null 某個欄位的數值不為null值

and 並且,等於&& 滿足所有條件

select * from emp where deptno=30 and sal>2000;

or 或者,等於|| 滿足一個條件

連線符存在and和or一起使用,需要新增()

in 用於條件中的一些常量的比較,可以被多個or替換

select * from emp where sal in(800,1000,1500,2000) 類似swtch

not in 多個and替換

like 模糊查詢(關鍵字查詢),條件中匹配一部分內容即可,不可是常量

例如,搜尋姓張的人

_ 表示一個位置上的任意內容

% 表示任意位置上的任意內容

select*from emp where ename like 'A%';

包含查詢:%A%

三、排序查詢

關鍵字:order by 位置暫時是在where之後

升序排序:預設排序 關鍵字是asc,可以省略

降序排序:關鍵字是desc,不能省略

select*from emp where sal>2000 order by sal asc;

如果兩個欄位值相同,就引入下一個排序,語法:

select*from emp where sal>2000 order by sal asc,ename asc;用逗號隔開

四、聚合函式/多行處理函式

sum()求和 avg()平均數 max()最大值 min()最下值 count()計數

位置:關鍵字select 之後 關鍵字heving之後

語法:

select sum(sal) from emp; //計算欄位sal的和,一般不會在使用聚合函式的時候加別的欄位

count() 用來統計一張表的記錄大小,不計數字段值為null的欄位;

語法:select count(*) from emp; //執行效率低

或者 select count(empno) from emp;

聚合函式可以一起使用,語法:

select sum(sal) '和',avg(sal) '平均數',max(sal) '最大值',min(sal) '最小值',count(empno) '個數' from emp;