你們好,我是魔王哪吒,話很少說,今天帶來的是一篇《考前複習必備MySQL數據庫(關係型數據庫管理系統)》文章,歡迎你們喜歡。
複製代碼
MySQL
是一個關係型數據庫管理系統,在web
應用方面,MySQL
是最好的關係型數據庫管理系統應用軟件之一。php
MySQL
是一種關係型數據庫管理系統,關係型數據庫將數據保存在不一樣的表中,而不是將全部數據放在一個大倉庫內,這樣增長了速度和提升了靈活性。mysql
MySQL
所使用的sql
語言是用於訪問數據庫的最經常使用標準化語言,因爲其體積小,速度快,整體擁有成本低,開放源碼,通常中小型網站的開發選擇MySQL
做爲網站數據庫。web
和其餘的大型數據庫例如Oracle
,DB2
,SQL Server
等相比,MySQL
也有本身的不足,可是這也沒有減小它受歡迎的程度,對於通常的我的使用者和中小型企業來講,MySQL
提供的功能是綽綽有餘。正則表達式
Linux
做爲操做系統,Apache
或Nginx
做爲Web
服務器,MySQL
做爲數據庫,PHP/Perl/Python
做爲服務器端腳本解釋器。sql
單點(Single)
,適合小規模應用 複製(Replication)
,適合中小規模應用 集羣(Cluster)
,適合大規模應用數據庫
從理論上來講,徹底能夠爲數據表裏的每一個字段分別建一個索引,但MySQL
把同一個數據表裏的索引總數限制爲16
個。windows
InnoDB
數據表的索引KEY
或 INDEX
定義的索引)的任務是加快對數據的訪問速度。MySQL
就會定義一個內部索引來幫助本身以最有效率的方式去管理和使用外鍵約束條件。INDEX
(columnA, columnB
) 索引。這種索引的特色是 MySQL
能夠有選擇地使用一個這樣的索引。鏈接MySQL,格式:api
mysql -h 主機地址 -u 用戶名 -p 用戶密碼
複製代碼
鏈接到本機上的MySQL
,首先打開DOS
窗口,進入目錄mysqlbin
,輸入mysql -uroot -p
,回車後提示你輸密碼。安全
鏈接遠程主機上的MySQL
,遠程主機的IP
,和用戶名root,密碼。服務器
命令:mysql -h遠程主機ip -uroot -p密碼
退出mysql
命名:exit
回車,可是注意,想要成功鏈接到遠程主機,須要在遠程主機打開mysql
遠程訪問權限。
mysql
是web
世界中使用最普遍的數據庫服務器。mysql
是爲服務器端設計的數據庫,能承受高併發訪問,同時佔用的內存也遠遠大於SQLite
。
SQLite
的特色是輕量級,可嵌入,但不能承受高併發訪問,適合桌面和移動應用。
把數據庫默認的編碼所有改成
UTF-8
MySQL的配置文件默認存放在/etc/my.cnf
或者/etc/mysql/my.cnf
:
代碼以下:
[client]
default-character-set = utf8
[mysqld]
default-storage-engine = INNODB
character-set-server = utf8
collation-server = utf8_general_ci
複製代碼
重啓mysql
後,能夠經過mysql
的客戶端命令行檢查編碼。
$ mysql -u root -p
MySQL數據庫管理方法,掌握數據庫的初始化,建立,查看,和刪除方法。學習數據表管理方法,掌握數據表的建立,查看,修改和刪除方法。
用戶帳戶的管理,用戶的建立,與刪除,用戶權限的授予與回收,用戶密碼的設置與更改方法。
爲了方便查看學習,我作了思惟導圖,以下圖所示:
初始化數據庫,在安裝好mysql
數據庫後,不要直接啓動,須要對數據庫進行初始化。
mysql提供數據庫命令:
mysql --initialize
進行初始化
windows+r
組合鍵,能夠打開「運行」窗口,在該窗口輸入cmd
按enter
鍵,打開命令行。cd
命令進入mysql
目錄。bin\mysqld --initialize
命令,進行初始化。初始化完成後,能夠啓動數據庫,啓動數據庫有兩種方式。
windows
服務器管理界面啓動;mysql
命令啓動。利用mysql
命令方式啓動數據庫:
windows+r
組合鍵,打開窗口,進入命令行;cd
命令進入mysql
目錄;bin\mysqld
,啓動mysql
服務。使用bin\mysql -u root -p
命令進入mysql
操做環境中。
服務圖片,開啓數據庫:
咱們來建立一個數據庫,create database
語句。
語法格式以下:
create database [db_name];
建立一個名爲web
的數據庫:
create database web;
在數據庫建立好後,mysql
的data
目錄下會自動生成一個名爲web
的目錄,該數據庫的數據會存儲於該目錄下。
在mysql
中能夠支持運行多個數據庫,因此咱們能夠建立多個數據庫。
數據庫建立好後,使用show
語句查看當前mysql
中有哪些數據庫。
show databases;
使用drop
語句刪除數據庫,語法格式以下:
drop database db_name;
刪除建立的web
數據庫,命令以下:
drop database web
刪除數據庫是一個不可逆的操做。
建立數據表使用create table
語句,語法格式以下。
user 數據庫名;
create table 表名 (字段名 類型(長度),字段名 類型(長度));
複製代碼
建立表語句:
查看錶分:
使用的語句有show
語句和describe
語句。
show
語句能夠查看數據庫中有哪些表。show tables
describe
語句能夠查看某個表的具體結構,查看組成表的各字段的信息。describe 庫名.表名;
使用
describe
語句能夠查看錶的各個字段名稱,類型,長度,是否非空,是否有主鍵,默認值以及備註等信息。
能夠修改表名,字段名,字段類型等表結構,可以使用alter
語句來實現修改操做。
修改表名的語句:
alter table 舊錶名 rename 新表名;
修改數據表student
改變爲student1
。
alter table student rename student1
修改字段名的語法格式以下:
alter table 表名 change 舊屬性名 新屬性名 新數據類型;
alter table student1 change name s_anme varchar(50);
修改字段類型的語法格式:
alter table 表名 modify 屬性名 數據類型;
alter table student1 modify name varchar(32);
增長字段的語法格式以下:
alter table 表名 add 屬性名 數據類型;
alter table student1 add sex char(1);
刪除字段語句:
alter table 表名 drop 屬性名;
示例:
alter table student1 drop sex;
使用drop
語句刪除數據庫中的表。
use 數據庫名;
drop 表名;
複製代碼
或者是
drop table 數據庫名.表名;
複製代碼
刪除某個數據中的某個表:
use test;
drop table student;
複製代碼
或者是
drop table test.student;
複製代碼
mysql
提供了一套完善的數據庫用戶以及權限管理系統。
使用create
語句建立用戶:
create user 'username'@'host' idendified by 'password';
username
表示爲建立的用戶名,host
指定該用戶在哪一個主機上能夠登陸。
create user 'test1'@'localhost' idendified by '1234';
create user 'test3'@'122.xxx' idendified by '1234';
使用drop
語句能夠刪除用戶,語法格式:
drop user 'username'@'host';
示例以下:
drop user 'test1'@'localhost';
grant
語句能夠對用戶進行受權:
grant privileges on dbname.tablename TO 'username'@'host';
privileges
表示要授予用戶的操做權限。grant select, insert on mysql.test TO 'test1'@'%';
表示受權用戶test1
在全部登陸主機均對mysql
庫的test
表擁有select
和insert
權限。
grant all on *.* TO 'test2'@'localhost';
表示受權用戶test2
在本地主機數據庫的全部庫的全部表擁有全部權限。
使用revoke
語句能夠對權限進行回收。
revoke privileges on databasename.tablename from 'username'@'host';
示例:
revoke select on *.* from 'test2'@'localhost';
使用mysql
所提供的密碼設置與更改語句,語法格式:
set password for 'username'@'host' = password('newpassword');
username
表示要設置或更改密碼的用戶名;host
指定該用戶的登陸主機;newpassword
表示要設置或更改的密碼。示例:
set password for 'test1'@'localhost' = password('12345');
數據庫是按照數據結構來組織,存儲和管理數據的倉庫。每一個數據庫都有一個或多個不一樣的api
用於建立,訪問,管理,搜索,複製所保存的數據。
將數據存儲在文件中,可是在文件中讀寫數據速度相對較慢。
一個關係型數據庫由一個或數個表格組成:表頭,行,列,鍵,值。
表頭爲每一列的名稱,列爲具備相同數據類型的數據的集合,行爲每一行用來描述某條記錄的具體信息,值爲行的具體信息,每一個值必須與該列的數據類型相同,鍵的值在當前列中具備惟一性。
MySQL
下載地址爲: MySQL
下載 https://dev.mysql.com/downloads/mysql/
安裝 MySQL
https://dev.mysql.com/downloads/repo/yum/
Mysql
安裝成功後,默認的root
用戶密碼爲空,可使用如下命令來建立root
用戶的密碼:
[root@host]# mysqladmin -u root password "new_password";
命令行:mysql -h 主機名 -u 用戶名 -p
運行mysql服務:
mysql -h localhost -u root -p
PHP Mysqli函數格式以下:
mysqli_function(value,value,...);
mysqli_connect($connect);
mysqli_query($connect,"SQL 語句");
mysqli_fetch_array()
mysqli_close()
複製代碼
mysqli_connect()
函數來鏈接數據庫
語法:
mysqli_connect(host,username,password,dbname,port,socket);
參數說明:
host
爲主機或ip
地址;username
爲mysql
用戶名;password
爲mysql
密碼;dbname
爲默認使用的數據庫;port
嘗試鏈接到mysql
服務器的端口號;語法:
bool mysqli_close ( mysqli $link )
鏈接mysql
服務器:
<?php
$dbhost = 'localhost'; // mysql服務器主機地址
$dbuser = 'root'; // mysql用戶名
$dbpass = '123456'; // mysql用戶名密碼
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Could not connect: ' . mysqli_error());
}
echo '數據庫鏈接成功!';
mysqli_close($conn);
?>
複製代碼
mysql
建立數據庫
使用create
命令建立數據庫,語法:
create database 數據庫名;
語法:mysqli_query(connection,query,resultmode);
connection
爲要使用的mysql
鏈接;query
爲查詢字符串;resultmode
一個常量,值MYSQLI_USE_RESULT
和MYSQLI_STORE_RESULT
。代碼:
<?php
$dbhost = 'localhost'; // mysql服務器主機地址
$dbuser = 'root'; // mysql用戶名
$dbpass = '123456'; // mysql用戶名密碼
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('鏈接錯誤: ' . mysqli_error($conn));
}
echo '鏈接成功<br />';
$sql = 'create database web';
$retval = mysqli_query($conn,$sql );
if(! $retval )
{
die('建立數據庫失敗: ' . mysqli_error($conn));
}
echo "數據庫 web 建立成功\n";
mysqli_close($conn);
?>
複製代碼
drop
命令格式:
drop database <數據庫名>;
語法
mysqli_query(connection,query,resultmode);
使用PHP mysqli_query
函數來刪除數據庫:
刪除數據庫:
<?php
$dbhost = 'localhost:3306'; // mysql服務器主機地址
$dbuser = 'root'; // mysql用戶名
$dbpass = '123456'; // mysql用戶名密碼
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('鏈接失敗: ' . mysqli_error($conn));
}
echo '鏈接成功<br />';
$sql = 'DROP DATABASE web';
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
die('刪除數據庫失敗: ' . mysqli_error($conn));
}
echo "數據庫 web 刪除成功\n";
mysqli_close($conn);
?>
複製代碼
使用函數mysqli_select_db
來獲取一個數據庫
語法:
mysqli_select_db(connection,dbname);
示例:
mysqli_select_db
函數來選取一個數據庫:
選擇數據庫
<?php
$dbhost = 'localhost:3306'; // mysql服務器主機地址
$dbuser = 'root'; // mysql用戶名
$dbpass = '123456'; // mysql用戶名密碼
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('鏈接失敗: ' . mysqli_error($conn));
}
echo '鏈接成功';
mysqli_select_db($conn, 'web' );
mysqli_close($conn);
?>
複製代碼
mysql
支持多種類型,分三類:
一、一個漢字佔多少長度與編碼有關:
UTF-8:一個漢字=3個字節
GBK:一個漢字=2個字節
二、varchar(n)
表示 n 個字符,不管漢字和英文,Mysql
都能存入 n 個字符,僅是實際字節長度有所區別
三、MySQL
檢查長度,可用 SQL
語言來查看
語法:
建立mysql
數據表的sql
語法。
CREATE TABLE table_name (column_name column_type);
在數據庫中建立數據表:
create table if not exists `table_tb` (
`table_id` int unsigned auto_increment,
`table_title` varchar(100) not null,
`table_author` varchar(40) not null,
`table_date` date,
primary key (`table_id`)
)engine=InnoDB default charset = utf8;
複製代碼
注意:在auto_increment
定義列爲自增的屬性,通常用於主鍵,數值會自動加1,。engine設置存儲引擎,charset設置編碼。
代碼:
<?php
$dbhost = 'localhost:3306'; // mysql服務器主機地址
$dbuser = 'root'; // mysql用戶名
$dbpass = '123456'; // mysql用戶名密碼
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('鏈接失敗: ' . mysqli_error($conn));
}
echo '鏈接成功<br />';
$sql = "create table table_tbl( ".
"table_id int not null auto_increment, ".
"table_title varchar(100) not null, ".
"table_author varchar(40) not null, ".
"submission_date DATE, ".
"primary key ( runoob_id ))ENGINE=InnoDB DEFAULT CHARSET=utf8; ";
mysqli_select_db( $conn, 'RUNOOB' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
die('數據表建立失敗: ' . mysqli_error($conn));
}
echo "數據表建立成功\n";
mysqli_close($conn);
?>
複製代碼
首先,考慮空值「」和null的概念:
mysql
中null
實際上是佔用空間的語法,刪除mysql
數據表的語法:
drop table table_name;
語法:
mysqli_query(connection,query,resultmode);
使用了PHP腳本刪除數據表:
<?php
$dbhost = 'localhost:3306'; // mysql服務器主機地址
$dbuser = 'root'; // mysql用戶名
$dbpass = '123456'; // mysql用戶名密碼
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('鏈接失敗: ' . mysqli_error($conn));
}
echo '鏈接成功<br />';
$sql = "drop table table_tb1";
mysqli_select_db( $conn, 'web' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
die('數據表刪除失敗: ' . mysqli_error($conn));
}
echo "數據表刪除成功\n";
mysqli_close($conn);
?>
複製代碼
mysql
數據表插入數據通用insert into
語法:
insert into table_name(field1,field2,...fieldN)
values
(value1,value2,...valueN);
複製代碼
代碼:
<?php
$dbhost = 'localhost:3306'; // mysql服務器主機地址
$dbuser = 'root'; // mysql用戶名
$dbpass = '123456'; // mysql用戶名密碼
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('鏈接失敗: ' . mysqli_error($conn));
}
echo '鏈接成功<br />';
// 設置編碼,防止中文亂碼
mysqli_query($conn , "set names utf8");
$table_title = '學習';
$table_author = 'web';
$submission_date = '2018-03-06';
$sql = "insert into table_tbl ".
"(table_title,table_author, submission_date) ".
"values ".
"('$table_title','$table_author','$submission_date')";
mysqli_select_db( $conn, 'web' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
die('沒法插入數據: ' . mysqli_error($conn));
}
echo "數據插入成功\n";
mysqli_close($conn);
?>
複製代碼
INSERT INTO table_name (field1, field2,...fieldN) VALUES (valueA1,valueA2,...valueAN),(valueB1,valueB2,...valueBN),(valueC1,valueC2,...valueCN)......;
學習sql
語句和mysql
基本數據類型,學習掌握數據插入,修改,刪除的sql語句,查詢語句,以及各種特定的查詢語句。
學會數據庫事務的概念,特性以及使用方法。
sql
的目錄也整理一個思惟導圖:
結構化查詢語言簡稱SQL
,結構化查詢語言是一種數據庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關係數據庫系統。
sql
語句就是對數據庫進行操做的一種語言。
sql
分三種類型:
DDL
語句,數據定義語句,定義了不一樣數據庫,表,列,索引等數據庫對象。DML
語句,數據操做語句,用於添加,刪除,更新和查詢數據庫記錄,並檢查數據完整性。DCL
語句,數據控制語句,定義數據庫,表,字段,用戶的訪問權限和安全級別。mysql
提供了多種數據類型,包括數值類型,字符串類型,日期和時間類型。
mysql
的數值類型:
整數類型:
tinyint
small int
medium int
int
big int
浮點數類型:
float
double
定點數類型:
decimal
整數類型的劃分是根據存儲空間的大小和表示範圍的大小來劃分
浮點類型是用來表示實數的一種方法,根據位數和精度,浮點類型分單精浮點數(8位精度)和雙精浮點數(16位精度)。
提供了多種字符串類型:
char
varchar
binary
varbinary
blob
text
enum
set
char
定義固定長度字符串varchar
定義可變長度字符串char
的長度固定爲建立表時聲明的長度,其取值範圍爲0到255,當保存char
值時,在右邊填充空格以達到指定的長度。
當檢索到char
值時,其尾部的空格會被刪除,因此在存儲時,通常字符串右邊不能有空格。若是字符串右邊有空格,在查詢出來後會被刪除。
varchar
的長度能夠指定爲0到6535,varchar
值在保存時只保存須要的字符串,並另外加一個字節來記錄長。
binary
與varbinary
binary
和varbinary
用來存儲二進制字符串。沒有字符集,而且會排序和比較基於列值字節的數值。
text
和blob
是以對象類型保存的文本與二進制。
text
視爲足夠大的varchar
,將blob
視爲足夠大的varbinary
,但text
和blob
與varchar
和varbinary
的不一樣之處:
blob
和text
的值時不刪除尾部空格。text
進行擴充以適應比較的對象。blob
和text
的索引,必須制定索引前綴的長度。blob
和text
不能有默認值。對弈text
和blob
對象的最大字符串長度由其類型肯定。
text
分爲tinytext
,text
,mediumtext
和longtext
四種類型。
blog
分爲tinyblob
,blob
,mediumblob
和longblob
四種類型。
enum
表示枚舉類型,它的取值範圍須要在建立表時經過枚舉方式顯式制定。enum
是忽略大小寫的。enum
只容許從值集合中選取單個值,不能一次選取多個值。
set是一個集合對象,能夠包含0到64個成員,其所佔存儲空間的大小是因集合成員數量的不一樣而有所不一樣的。
提供了多種日期和時間類型:
year
time
date
datetime
timestamp
日期格式,year
,YYYY;time
,HH:MM:SS;date
,YYYY-MM-DD;datetime
,YYYY-MM-DD HH:MM:SS,timestamp
,YYYY-MM-DD HH:MM:SS。
insert into 表名 values (值1,值2,...);
insert into 表名 (列1,列2,...) values (值1,值2);
在mysql
中,insert
語句,能夠一次性插入多條記錄,語法格式以下。
insert into 表名 (列1,列2,...) values (值1,值2,...), (值1,值2,...),...;
經過update
命令進行修改:
update 表名 set 列名 = 新值 whert 列名 = 某值;
update 表1,表2,...set 表1.列1,表2.列2,...where 條件;
可使用delete
命令進行刪除:
delete from 表名 where 列名=值;
delete
命令能夠一次刪除多個表的數據:
delete 表1,表2,... from 表1,表2,...where 條件;
最基本的select
語句的語法格式:
select 字段 from 表名 where 條件;
條件查詢的語句:
select 字段 from 表名 where 條件;
union
操做符
union
操做符用於合併兩個或多個select
語句的結果集。
代碼:
select 條件 from 表1
union
select 條件 from 表2;
複製代碼
union
和union all
的主要區別union all
用於將結果集直接合並在一塊兒。union
用於將union all
後的解構進行一次distinct
,以刪除重複結果記錄。語法格式以下:
select distinct 字段 from 表名;
語法格式:
select 字段 from 表名 where 字段 like 值;
%
的使用,用來匹配0個或多個字符,能夠匹配任意類型和長度的字符,對長度沒有限制。
「_」
的使用,用來匹配任意單個字符,經常使用來限制表達式的字符長度。
使用order by
關鍵字來排序:
select 字段 from 表名 where 條件 order by field1 desc/asc, field2 desc/asc, ...;
排序方式:desc
表示降序排列,asc
表示升序排序。默認值爲asc
。
order by
後面能夠跟多個不一樣的排序字段。
使用limit
關鍵字進行限制查詢,格式:
select 字段 limit 起始偏移量,行數;
聚合語句格式:
select 字段 op_name from 表名 where 條件 group by filed1, filed2, ... with rollup having 條件;
op_name
表示要進行的聚合操做,就是聚合函數。
聚合函數:
sum
函數求和count
函數記錄數max
函數最大值min
函數最小值groupby
表示要進行分類聚合的字段with rollup
表示是否對分類聚合後的結果進行在彙總having
表示對分類後的結果進行條件過濾內鏈接查詢是指全部查詢的結果都可以在鏈接的表中有對應記錄。在默認狀況下是內鏈接,能夠不寫join
關鍵字,或者寫inner join
。
join
分三類:
inner join
:獲取兩個表中字段匹配關係的記錄。left join
:獲取左表全部記錄,即便右表沒有對應匹配的記錄。right join
:用於獲取右表全部記錄,即便左表沒有對應匹配的記錄。左鏈接是指以左邊的表的數據爲基準,去匹配右邊的表的數據。
左鏈接的關鍵字:left join
。 右鏈接的關鍵字:right join
。
右鏈接反之。
事務概述:事務,通常是指要作的或所作的事情。在計算機術語中是指訪問並可能更新數據庫中各類數據項的一個程序執行單元。
事務由事務開始和事務結束之間執行的全體操做組成。
事務就是一組由sql
語句組成的業務邏輯,只有事務內的全部sql
語句都成功執行,整個事務纔算成功,不然就是失敗。
默認狀況下,sql
語句是自動提交的,每條sql
語句在執行完畢後會 自動提交事務,要想統一提交事務,須要先關閉mysql
的自動提交功能。
查看數據庫是否開啓自動提交:
show variables like 'autocommit';
使用命令關閉自動提交:
set autocommit=0;
命令手動進行事務提交:
commit
事務中已執行成功的語句結果應該回退至未執行狀態,稱爲事務回滾。
事務回滾:
rollback
事務的併發讀問題
事務以begin transaction
開始:
格式:
begin transaction <事務名稱> |@ <事務變量名稱>
語法說明以下:
@<事務變量名稱>
由用戶定義的變量,必須用char,varchar,nchar或nvarchar
數據類型來聲明該變量。
begin transaction
語句的執行。
commit
表示提交事務,即提交事務的全部操做。
rollback
表示撤銷事務,即在事務運行的過程當中發生了某種故障,事務不能繼續執行,系統將事務中對數據庫的全部已完成的操做所有撤銷,回滾到事務開始時的狀態。
語法格式:
rollback[transaction]
^
匹配輸入字符串的開始位置。$
匹配輸入字符串的結束位置。[...]
字符集合。匹配所包含的任意一個字符。[^...]
負值字符集合。匹配未包含的任意字符。*
匹配前面的子表達式零次或屢次。+
匹配前面的子表達式一次或屢次。{n}
n 是一個非負整數。匹配肯定的 n 次。{n,m}
m 和 n 均爲非負整數,其中n <= m。最少匹配 n 次且最多匹配 m 次。sql
語句:
select lastname from persons
select
從數據庫表中獲取數據update
更新數據庫表中的數據delete
從數據庫表中刪除數據insert into
向數據庫表中那個插入數據create database
建立新數據庫alter database
修改數據庫create table
建立新表drop table
刪除表alter table
變動數據庫表create index
建立索引drop index
刪除索引SELECT
語句用於從表中選取數據。
SELECT 列名稱 FROM 表名稱
SELECT * FROM 表名稱
SELECT LastName,FirstName FROM Persons
SQL SELECT DISTINCT
語句
在表中,可能會包含重複值。關鍵詞 DISTINCT 用於返回惟一不一樣的值。
語法:
SELECT DISTINCT 列名稱 FROM 表名稱
WHERE
子句用於規定選擇的標準。
SELECT 列名稱 FROM 表名稱 WHERE 列 運算符 值
操做符 | 描述 |
---|---|
= |
等於 |
<> |
不等於 |
> |
大於 |
< |
小於 |
>= |
大於等於 |
<= |
小於等於 |
BETWEEN |
在某個範圍內 |
LIKE |
搜索某種模式 |
若是第一個條件和第二個條件都成立,則 AND
運算符顯示一條記錄。
若是第一個條件和第二個條件中只要有一個成立,則 OR
運算符顯示一條記錄。
ORDER BY
語句用於對結果集進行排序。
INSERT INTO
語句
INSERT INTO 表名稱 VALUES (值1, 值2,....)
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
Update
語句用於修改表中的數據。
UPDATE 表名稱 SET 列名稱 = 新值 WHERE 列名稱 = 某值
DELETE
語句用於刪除表中的行。
DELETE FROM 表名稱 WHERE 列名稱 = 值
數據庫的發展歷程:
關係數據庫:
數據表是存儲數據的邏輯單元。
數據表中,一行稱爲一條記錄,一列稱爲一個字段。
主鍵:惟一標識此條記錄。
掃碼關注公衆號,訂閱更多精彩內容。