中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

安卓手機應(yīng)用市場杭州seo工作室

安卓手機應(yīng)用市場,杭州seo工作室,東莞商務(wù)網(wǎng)站建設(shè),dede微電影網(wǎng)站模板下載#課程目標 能夠創(chuàng)建、刪除數(shù)據(jù)表能夠?qū)Ρ砝锏臄?shù)據(jù)記錄進行增加、刪除、修改、查詢操作能夠創(chuàng)建、刪除用戶能夠給用戶授權(quán)并回收權(quán)限了解delete和truncate語句的區(qū)別 #一、數(shù)據(jù)庫基本操作 ##1、查看數(shù)據(jù)庫相關(guān)信息 mysql> show databases; 查看所有數(shù)據(jù)庫 mysql>…
 

#課程目標

  • 能夠創(chuàng)建、刪除數(shù)據(jù)表
  • 能夠?qū)Ρ砝锏?#61;=數(shù)據(jù)記錄==進行==增加、刪除、修改、查詢操作==
  • 能夠==創(chuàng)建、刪除用戶==
  • 能夠給==用戶授權(quán)并回收權(quán)限==
  • 了解delete和truncate語句的區(qū)別

#一、數(shù)據(jù)庫基本操作

##1、查看數(shù)據(jù)庫相關(guān)信息

mysql> show databases;      查看所有數(shù)據(jù)庫
mysql> show schemas;            查看所有數(shù)據(jù)庫
mysql> use 數(shù)據(jù)庫名;            指定數(shù)據(jù)庫,類似于進入到某個庫里進行操作
mysql> show tables;         查看所有表
mysql> show variables;      查看變量
mysql> show variables like '%char%';
mysql> show variables like '%data%';
mysql> show engines;            查看存儲引擎
?
說明:";"號代表一條sql語句結(jié)束,所以,每條SQL語句結(jié)束都需要加";"

2、服務(wù)器字符集設(shè)置

注意:只要是永久更改,必然更改配置文件!

[mysqld]
basedir=/mysql_3306
datadir=/mysql_3306/data
socket=/tmp/mysql.sock
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci

3、創(chuàng)建庫(==create database==)

創(chuàng)建db1庫
create database db1;
創(chuàng)建db1庫并指定默認字符集
create database db1 default charset gbk;
如果存在不報錯(if not exists)
create database if not exists db1 default character set utf8;
說明:不能創(chuàng)建相同名字的數(shù)據(jù)庫!

##4、更改數(shù)據(jù)庫信息(==alter database==)

更改db1庫的默認字符集
alter database db1 default character set gbk;
alter database db2 default charset utf8;

##5、刪除數(shù)據(jù)庫(==drop database==)

刪除db1庫
drop database db1;

#二、數(shù)據(jù)表基本操作

##1、創(chuàng)建表(==create table==)

###㈠ 語法格式

create table 表名 (字段1,字段2,...)
create table 表名 (字段1 數(shù)據(jù)類型(字符長度),字段2,...)
create table 表名 (字段1 數(shù)據(jù)類型(字符長度) 約束條件,字段2,...)

###㈡ 示例

創(chuàng)建t1表,id列整型,name列字符串
int(10)
varchar(30)
?
create table t1 (id int,name varchar(10));
創(chuàng)建t2表,id列整型,并且為主鍵,name列字符串
create table t2 (id int key,name varchar(20) not null,......)
查看表的結(jié)構(gòu)
desc t1;
describe t2;

##2、插入記錄(==insert into==)

以下是往表里插入數(shù)據(jù)的幾種不同方法
insert into 表名 set 字段1=xx,字段2=xx;
insert into t1 set id=3,name='li';
?
insert into 表名 values(值1,值2),(值1,值2)
insert into t1 values(1,'zhang'),(2,'wang');
?
insert into 表名 (指定字段1,指定字段2) values(字段1值,字段2值);
insert into t2 (id,name) values(3,'li');
?
?
insert into t1 select * from t2;
insert into t1(name) select name from t2;
說明:
1.插入的數(shù)據(jù)來自于另外一張表
2.一定要保證兩張表的結(jié)構(gòu)一致(插入表里字段數(shù)和后面表查找出來的字段要相匹配)
3.兩張表結(jié)構(gòu)完全一致;或者人造讓兩邊字段一致
?
查詢表里所有記錄
select * from t1;

##3、刪除記錄(==delete from==)

刪除表里所有的記錄
delete from 表名;delete from t1;
truncate 表名;
根據(jù)條件刪除
delete from t1 where id>3;
注意:
truncate不能加where條件刪除數(shù)據(jù);只能全部刪除表里的所有記錄。

##4、更新記錄(==update 表名==)

###㈠ 語法

update 表名 set 字段1=新值,字段2=新值,... where條件;

###㈡ 示例

update t1 set name='harry' where id=1;
update t1 set name='jack',id=33 where id=3;
update t1 set id=222,name='wanger' where id=2;

##5、更改表屬性信息(==alter table==)

增加一列成為第一列
alter table t2 add id int first;
在id后面增加一列叫id2
alter table t2 add id2 int after id;
alter table t1 add sex varchar(10) not null;刪除id2這個列
alter table t2 drop id2;修改列名和數(shù)據(jù)類型
alter table t2 change id ID bigint;
修改列的數(shù)據(jù)類型
alter table t2 modify ID int;查看數(shù)據(jù)庫有哪些存儲引擎
show engines;
修改表的存儲引擎
alter table t2 engine MyISAM;
查看修改存儲引擎是否成功
show create table t2;
修改表的默認字符集
alter table t2 default charset=utf8;

##6、重命名或移動表(==rename table==)

移動表到另一個庫里并重命名
rename table db01.t1 to db02.t11;
或者
alter table db01.t1 rename db02.t11;只重命名表名不移動
rename table tt1 to tt2;
或者
alter table tt1 rename  tt2;

##7、刪除表(==drop table==)

drop table 表名;

##8、delete/truncate/drop區(qū)別

  • delete:刪除==數(shù)據(jù)記錄==

    • 數(shù)據(jù)操作語言(DML)

    • 在事務(wù)控制里,DML語句要么commit,要么rollback

    • 刪除==大量==記錄速度慢,==只刪除數(shù)據(jù)==不回收高水位線

    • 可以==帶條件==刪除

  • truncate:刪除==所有數(shù)據(jù)記錄==

    • 數(shù)據(jù)定義語言(DDL)

    • ==不在==事務(wù)控制里,DDL語句執(zhí)行前會提交前面所有未提交的事務(wù)

    • 清里大量數(shù)據(jù)==速度快==,回收高水位線(high water mark)

    • ==不能帶條件刪除==

  • drop:刪除==數(shù)據(jù)庫對象==

    • 數(shù)據(jù)定義語言(DDL)

    • 數(shù)據(jù)庫對象包括庫、表、用戶等

#三、用戶管理

##1、創(chuàng)建用戶(==create user==)

注意:MySQL中不能單純通過用戶名來說明用戶,必須要加上主機。如==jack@10.1.1.1==

###㈠ 語法

創(chuàng)建用戶不設(shè)置密碼
create user 'user'@'host';創(chuàng)建用戶設(shè)置密碼
create user 'user'@'host' identified by 'password';說明:用戶的信息保存在mysql數(shù)據(jù)庫中的user表中,驗證用戶是否創(chuàng)建成功如下:
select user,host from mysql.user; 

###㈡ 示例

create user 'tom'@'localhost' identified by '123';
create user 'harry'@'localhost' identified by '123';
create user 'tom'@'10.1.1.1' identified by '123';
create user  'jack'@'%' identified by '123';

###㈢ 用戶主機表示方式

'user'@'localhost'			表示user只能在本地通過socket登錄數(shù)據(jù)庫
'user'@'192.168.0.1'			表示user用戶只能在192.168.0.1登錄數(shù)據(jù)庫
'user'@'192.168.0.0/24'		表示user用戶可以在該網(wǎng)絡(luò)任意的主機登錄數(shù)據(jù)庫
'user'@'%'						表示user用戶可以在所有的機器上登錄數(shù)據(jù)庫;本機為匿名用戶

2、刪除用戶(==drop user==)

㈠ 語法

drop user 用戶;

㈡ 示例

刪除'user01'@'localhost'用戶
mysql> drop user 'user01'@'localhost';
默認刪除user01從任意主機登錄
mysql> drop user 'user01';
mysql> drop user 'user01'@'%';重命名用戶名
mysql> rename user 'harry'@'10.1.1.%' to 'harry'@'10.1.1.1';刪除一個匿名用戶
mysql> drop user ''@'localhost';刪除mysql中的匿名用戶
mysql> delete from mysql.user where user='';
刪除root用戶從本機::1登錄(::1表示IPv6地址)
mysql> delete from mysql.user where user='root' and host='::1';
mysql> flush privileges;注意:如果tcp/ip登錄,服務(wù)器端口不是默認3306,則需要加端口號

3、用戶權(quán)限管理(==grant==)

㈠ 權(quán)限說明

所有權(quán)限說明MySQL :: MySQL 5.7 Reference Manual :: 6.2.2 Privileges Provided by MySQL

USAGE	無權(quán)限,只有登錄數(shù)據(jù)庫,只可以使用test或test_*數(shù)據(jù)庫
ALL	所有權(quán)限以下權(quán)限為指定權(quán)限
select/update/delete/super/replication slave/reload...with grant option 選項表示允許把自己的權(quán)限授予其它用戶或者從其他用戶收回自己的權(quán)限

###㈡ 權(quán)限保存位置

mysql.user				所有mysql用戶的賬號和密碼,以及用戶對全庫全表權(quán)限(*.*)
mysql.db					非mysql庫的授權(quán)都保存在此(db.*)
mysql.table_priv		某庫某表的授權(quán)(db.table)
mysql.columns_priv	某庫某表某列的授權(quán)(db.table.col1)
mysql.procs_priv		某庫存儲過程的授權(quán)

###㈢ 給用戶授權(quán)

####① 語法

grant 權(quán)限1,權(quán)限 on 庫.表 to 用戶@主機
grant 權(quán)限(列1,列2,...) on 庫.表 to 用戶@主機

####② 用戶授權(quán)示例

給tom@10.1.1.1用戶授予查看db01庫里所有表權(quán)限
mysql> grant select on db01.* to 'tom'@'10.1.1.1';
刷新權(quán)限表
mysql> flush privileges;給tom@10.1.1.1用戶授予修改db01庫的ID字段的權(quán)限
mysql> grant update(ID) on db01.tt1 to 'tom'@'10.1.1.1';
mysql> flush privileges;
查看當前用戶權(quán)限
mysql> show grants;
查看指定用戶權(quán)限
mysql> show grants for 'tom'@'10.1.1.1';
③ 使用grant創(chuàng)建用戶

說明:5.7以后==不推薦==,未來會被棄用!

grant all on *.* to 'harry'@'10.1.1.%' identified by '123'; 

####④ with grant option選項

with grant option:用戶是否可以下放和回收權(quán)限grant all on *.* to 'amy'@'10.1.1.%' identified by '123' with grant option;
grant all on *.* to 'harry'@'10.1.1.%' identified by '123'; 測試harry用戶和amy用戶是否可以將自己的權(quán)限下放:
harry用戶登錄:mysql> grant select on db01.* to 'tom'@'10.1.1.1';
ERROR 1044 (42000): Access denied for user 'harry'@'10.1.1.%' to database 'db01'amy用戶登錄:
mysql> grant select on db01.* to 'tom'@'10.1.1.1';

####⑤ 總結(jié)

  • 創(chuàng)建用戶方法

    • create user... ==需要單獨grant授權(quán)==

    • grant xxx ==直接創(chuàng)建用戶并授權(quán)==

  • 擴展補充

    • 從MySQL 5.7.6開始,不贊成使用grant修改密碼;使用 ALTER USER來代替。

    ALTER USER 'jeffrey'@'localhost' IDENTIFIED BY 'mypass'; 

###㈣ 回收用戶權(quán)限

revoke 權(quán)限 on 庫.表 from 用戶;
撤消指定的權(quán)限
mysql> revoke update on db01.tt1 from 'tom'@'10.1.1.1';
撤消所有的權(quán)限
mysql> revoke select on db01.* from 'tom'@'10.1.1.1';

#四、查詢語句

##1、常見符號

符號說明
%匹配0個或任意多個字符
_(下劃線)匹配單個字符
like模糊匹配
=等于,精確匹配
>大于
<小于
>=大于等于
<=小于等于
!=和<>不等于
! 和 not邏輯非
|| 和 or邏輯或
&& 和 and邏輯與
between...and....兩者之間
in (....)在...
not in (....)不在

##2、其他關(guān)鍵字

符號說明
regexp使用正則來匹配
order by排序
asc升序排列
desc降序排列
group by聚合
having篩選
distinct去除重復(fù)的行

##3、查詢舉例

###㈠ 基本簡單查詢

select 字段1,字段2,... from 表名;查看所有數(shù)據(jù)
select * from emp;
查看指定列
select empno,ename,job,sal from emp;
給列指定別名
select empno 工號,ename 姓名,job 工作,sal 工資 from emp;
或者
select empno as 工號,ename as 姓名,job as 工作,sal as 工資 from emp;

###㈡ 帶where條件查詢

支持邏輯運算符,支持正則表達式
select * from t3 where english >60 && english <90;
select * from t3 where math >= 60 and english >= 60;
select * from t3 where math >= 60 or english >= 60;
select * from t3 where math >= 60 and not english >= 60;select * from t3 where name regexp '^h';
select * from t1 where name regexp '.*[0-9]';
select * from t1 where name regexp '.*[0-9]+.*';
select * from t1 where name regexp '.*[0-9]{2}.*' ;sal不在3000與5000之間的記錄 
select * from emp where sal not between 3000 and 5000;sal在500-1000或者3000-5000之間
select * from emp where sal >= 3000 and sal <= 5000 or sal >=500 and sal <=1000;

###㈢ 排序

默認按照deptno列升序排列
select * from emp order by deptno;
指定按照deptno列升序排列
select * from emp order by deptno asc;
指定deptno列按降序排列
select * from emp order by deptno desc;

###㈣ 去重

select distinct deptno from emp;

###㈤ group by和having

####① group by

根據(jù)給定==數(shù)據(jù)列==的查詢結(jié)果進行分組統(tǒng)計,最終得到一個==分組匯總表==

注:一般情況下group by需與==統(tǒng)計函數(shù)==一起使用才有意義

常見統(tǒng)計函數(shù)說明
max求最大值
min求最小值
sum求和
avg求平均值
count求總行數(shù)
  • 舉例說明

查找每個部門的最高工資:
select deptno,max(sal) from emp group by deptno;
每個部門最大工資和部門人數(shù):
select deptno,max(sal),count(*) from emp group by deptno;
+--------+----------+----------+
| deptno | max(sal) | count(*) |
+--------+----------+----------+
|     10 |  5000.00 |        3 |
|     20 |  3000.00 |        5 |
|     30 |  2850.00 |        6 |
+--------+----------+----------+
查找10號和20號部門最大工資和人數(shù)
select deptno,max(sal),count(*) from emp where deptno in (10,20) group by deptno;
+--------+----------+----------+
| deptno | max(sal) | count(*) |
+--------+----------+----------+
|     10 |  5000.00 |        3 |
|     20 |  3000.00 |        5 |
+--------+----------+----------+

####② having

  • having與where類似,根據(jù)條件對==數(shù)據(jù)==進行過濾篩選

  • where==針對表中的列==發(fā)揮作用,查詢數(shù)據(jù)

  • having==針對查詢結(jié)果集==發(fā)揮作用,篩選數(shù)據(jù)

舉例說明

查詢員工數(shù)大于5個的部門編號和最大工資及員工數(shù)
select deptno,max(sal),count(*) from emp group by deptno having count(*)>5;
查詢底薪+提成大于2000的員工相關(guān)信息
select empno,ename,sal+ifnull(comm,0) sum from emp having sum >2000;
查詢每個部門最大工資的員工信息
select ename,empno,deptno,sal from emp where (deptno,sal) in (select deptno,max(sal) from emp group by deptno) ;
+-------+-------+--------+---------+
| ename | empno | deptno | sal     |
+-------+-------+--------+---------+
| BLAKE |  7698 |     30 | 2850.00 |
| SCOTT |  7788 |     20 | 3000.00 |
| KING  |  7839 |     10 | 5000.00 |
| FORD  |  7902 |     20 | 3000.00 |
+-------+-------+--------+---------+
4 rows in set (0.00 sec)查詢20和30號部門基本工資加提成大于2000的人員信息
select deptno,empno,ename,sal+ifnull(comm,0) sum from emp where deptno in(30,20)having sum >2000;
  • IFNULL函數(shù)擴展

IFNULL()函數(shù):
MySQL中的IFNULL函數(shù)類似于Oracle中的NVL函數(shù),其表達式為:IFNULL(expr1,expr2),如果第一個參數(shù)不為空,則返回第一個參數(shù),否則返回第二個參數(shù)。
ifnull(comm,0)IFNULL(expr1,expr2)
If expr1 is not NULL, IFNULL() returns expr1; otherwise it returns expr2.IF()函數(shù):
IF(expr1,expr2,expr3)類似于Oracle中的NVL2函數(shù),如果第一個表達式的值為TRUE(不為0或null),則返回第二個參數(shù)的值,否則返回第三個參數(shù)的值IF(expr1,expr2,expr3)
If expr1 is TRUE (expr1 <> 0 and expr1 <> NULL), IF() returns expr2. Otherwise, it returns expr3.NULLIF()函數(shù):
NULLIF(expr1,expr2),如果expr1=expr2為真,返回null;否則返回expr1NULLIF(expr1,expr2)
Returns NULL if expr1 = expr2 is true, otherwise returns expr1. This is the same as CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END.

###㈥ 合并列函數(shù)(concat)

select concat(user,'    ',password) as 用戶名和密碼 from mysql.user;
create table t3(path1 varchar(255),homedir varchar(255));
insert into t3 set path1='/www/itcast',homedir='u01';
select concat(path1,'/', homedir) from t3;
select concat(path1,'/', homedir) as '家目錄' from t3;

###㈦ 分頁函數(shù)(limit)

用法:limit 起始位置,偏移量			  起始位置從0開始
select * from t1 limit n;			顯示前n行
select * from t1 limit n,m;		顯示n+1行至表中的n+m行select * from t1 limit 10;			顯示前10行
select * from t1 limit 10,10;	   顯示11至20行
select * from t1 limit 1;			顯示第1行 
select * from t1 limit 0,2;		顯示第1,2行 
select * from t1 limit 2,2;		顯示3,4行
select * from t1 limit 4,2;		顯示5,6行
select * from t1 limit 6,2;		顯示第7,8行

###㈧ 多表聯(lián)合查詢

常規(guī)查詢表:
select * from emp,dept where emp.deptno=dept.deptno;select dept.deptno,dept.dname,emp.ename,emp.job from emp,dept where emp.deptno=dept.deptno;select e.ename,e.job,e.hiredate,d.dname,e.deptno from emp e,dept d where e.deptno=d.deptno;表的連接:縱向連接/內(nèi)連接/左連接/右連接左連接(以左表為標準連接右表):
left join=left [outer] join
select emp.ename,emp.job,dept.deptno from dept left join emp on emp.deptno=dept.deptno;右連接(以右表為標準連接左表):
right join= right [outer] join
select emp.ename,emp.job,dept.deptno from dept right join emp on emp.deptno=dept.deptno;內(nèi)連接:取多表之間的交集
inner join
select emp.ename,emp.job,dept.deptno from emp inner join dept on emp.deptno=dept.deptno;縱向連接:合并【表結(jié)構(gòu)相同】
select name,math,english,'' as 'chinese' from t2 union select name,math,english,chinese from t3;

###㈨ 四則運算

select 1+2;
select 1-3;
select 1*4;
select 1/4;
select 1 + 1, (10-1)/3, 2*2/2;
select 1 + 1 from dual;		dual表,俗稱萬能表
乘冪需要調(diào)用函數(shù):-3表示2的三次冪取倒數(shù)
mysql> select pow(2,3),power(2,3),pow(2,-3),power(2,-3);
+----------+------------+-----------+-------------+
| pow(2,3) | power(2,3) | pow(2,-3) | power(2,-3) |
+----------+------------+-----------+-------------+
|        8 |          8 |     0.125 |       0.125 | 
+----------+------------+-----------+-------------+
1 row in set (0.00 sec)

#五、擴展常見的數(shù)據(jù)類型

##1、數(shù)值類型

常見的數(shù)值類型

###㈠ 整數(shù)類型(精確值)

###㈡ 定點類型(精確值)

  • DECIMAL和NUMERIC

DECIMALNUMERIC?類型的存儲==精確的數(shù)值數(shù)據(jù)==。使用這些類型時,重要的是要保留==精確的精度==,例如使用貨幣數(shù)據(jù)。在MySQL中, NUMERIC被作為DECIMAL來應(yīng)用,所以下面的舉例DECIMAL同樣適用于?NUMERIC

  • 舉例說明

salary DECIMAL(5,2)
在上面的例子中,薪水字段的類型為decimal,表示精確的數(shù)字。其中,5代表精度,2代表刻度。
精度表示數(shù)值存儲的有效位數(shù),刻度表示小數(shù)點后面可存儲的位數(shù)。
DECIMAL(5,2)能夠存儲五位數(shù)和兩位小數(shù)的任何值,因此可以存儲在salary 列中的值的范圍-999.99是 999.99特殊注意:
DECIMAL(M)和DECIMAL(M,0)是相等的,存儲長度取決于M的值,默認情況下M值為10.刻度為0表示沒有小數(shù)。

###㈢ 浮點類型(近似值)

  • FLOAT和DOUBLE

FLOATDOUBLE類型代表近似數(shù)字數(shù)據(jù)值。MySQL對于單精度值使用四個字節(jié),對于雙精度值使用八個字節(jié)。 FLOAT單精度浮點數(shù)精確到約7位小數(shù),DOUBLE雙精度浮點數(shù)精確到大約15位小數(shù) 。FLOAT類型會隨著數(shù)值的增大精度會減小。

  • 舉例說明

FLOAT(M,D),其中,M表示存儲的有效位數(shù),D代表小數(shù)點后面的位數(shù);即整數(shù)位數(shù)+小數(shù)部分不能超過M值。
colum1 FLOAT(7,4)
上面例子中,如果你插入為999.00009到cloum1列,那么mysql在存儲時會四舍五入變?yōu)?99.0001插入。
  • 對比總結(jié)

數(shù)值類型精度存儲空間精確性
FLOAT單精度4字節(jié)
DOUBLE雙精度8字節(jié)低,比float高
DECIMAL高精度變長

##2、字符串類型

常見的字符類型

###㈠ CHAR類型

CHAR類型的字符串為定長.長度范圍是0到255之間的任何值.占用定長的存儲空間,不足的部分用==空格==填充;讀取時刪掉后面的空格。

name char(10)

  • 存儲空間

CHAR(==M==)類型的存儲空間和字符集有關(guān)系,一個中文在utf8字符集中占用3個bytes、gbk占用2個bytes、數(shù)字和字符統(tǒng)一用一個字符表示。

  • 存儲機制

在不夠M長度時,MySQL在存儲數(shù)據(jù)時,需要填充特殊的空格.

  • 舉例說明

name CHAR(M),M表示字符數(shù)

###㈡ VARCHAR類型

VARCHAR是==變長存儲==,僅使用必要的存儲空間.

name varchar(10)

  • 存儲空間

VARCHAR(M)類型的存儲空間和字符集有關(guān)系,一個中文在utf8字符集中占用3個bytes、gbk統(tǒng)一占用2個bytes、數(shù)字和字符一個字符表示。

  • 存儲機制

VARCHAR(M)字段存儲實際是從第二個字節(jié)開始存儲,然后用1到2個字節(jié)表示實際長度,剩下的才是可以存儲數(shù)據(jù)的范圍,因此最大可用存儲范圍是65535-3=65532字節(jié);

第一個字節(jié)標識是否為空.(長度小于255字節(jié),使用一個字節(jié)來表示長度;大于255字節(jié)使用兩個字節(jié)來表示長度)。

###㈢ 其他

BLOB:保存二進制的大型數(shù)據(jù)(字節(jié)串),沒有字符集,eg:圖片、音頻視頻等。

TEXT:保存非二進制字符串(字符串);有一個字符集。

BINARY和VARBINARY:類似CHAR和VARCHAR;保存字節(jié)字符串,而不是字符字符串,這意味著它們沒有字符集

##3、時間類型

###㈠ DATE類型

The?DATE?type is used for values with a date part but no time part. MySQL retrieves and displays?DATE?values in'YYYY-MM-DD'?format. The supported range is?'1000-01-01'?to?'9999-12-31'.

###㈡ DATETIME

The?DATETIME?type is used for values that contain both date and time parts. MySQL retrieves and displaysDATETIME?values in?'YYYY-MM-DD HH:MM:SS'?format. The supported range is?'1000-01-01 00:00:00'?to?'9999-12-31 23:59:59'.

###㈢ TIMESTAMP

The?TIMESTAMP?data type is used for values that contain both date and time parts.?TIMESTAMP?has a range of?'1970-01-01 00:00:01'?UTC to?'2038-01-19 03:14:07'?UTC.

注意:

Invalid?DATE,?DATETIME, or?TIMESTAMP?values are converted to the?“zero”?value of the appropriate type ('0000-00-00'?or?'0000-00-00 00:00:00').

無效的日期,日期時間等會被替換成‘0000-00-00’或‘0000-00-00 00:00:00’

###㈣ TIME

MySQL retrieves and displays?TIME?values in?'HH:MM:SS'?format (or?'HHH:MM:SS'?format for large hours values).TIME?values may range from?'-838:59:59'?to?'838:59:59'.

說明:小時部分可以是這么大,因為可以使用TIME類型不僅代表一個時間(必須小于24小時),而且可以表示運行時間或兩個事件之間的時間間隔(可能大于24小時,甚至負數(shù))。

==注意:==

TIME這一列如果存儲縮寫,需要注意mysql的解釋方式。無效的時間值會被轉(zhuǎn)換成'00:00:00'?。

'11:12'?means?'11:12:00', not?'00:11:12'.

'12'?and?12?are interpreted as?'00:00:12'.

###㈤ YEAR

YEAR(4)?and?YEAR(2)?differ in display format, but have the same range of values.

For 4-digit format, MySQL displays?YEAR?values in?YYYY?format, with a range of?1901?to?2155, or?0000.

For 2-digit format, MySQL displays only the last two (least significant) digits; for example,?70?(1970 or 2070) or?69?(2069).

無效的值將會被轉(zhuǎn)換成'0000'.

六、課后練習

1、將SQL腳本(demo.sql)導(dǎo)入到數(shù)據(jù)庫中

2、根據(jù)如下要求寫出查詢語句

1)查詢英語前三名

2)查詢總分,以降序排列

3)查詢總分第一名

4)查詢英語最高分的姓名及分數(shù)

5)查詢總成績的平均分第一名

http://m.risenshineclean.com/news/62470.html

相關(guān)文章:

  • 怎樣自己制作網(wǎng)站做情感顧問品牌營銷策略四種類型
  • 廣州網(wǎng)站建設(shè)如何做合肥網(wǎng)絡(luò)推廣網(wǎng)絡(luò)運營
  • 網(wǎng)站域名注冊商標站長工具排名分析
  • 疫情結(jié)束了嗎最新消息seo怎么發(fā)布外鏈
  • 免費咨詢醫(yī)生回答在線男科如何優(yōu)化網(wǎng)站排名
  • 靜態(tài)頁面網(wǎng)站怎么做獨立網(wǎng)站怎么做
  • 做推送的網(wǎng)站有哪些微信推廣怎么弄
  • 太原seo網(wǎng)站排名網(wǎng)絡(luò)推廣員是什么
  • 做網(wǎng)站美工工資多少合肥推廣外包公司
  • 做網(wǎng)站需要團隊還是一個人中國seo排行榜
  • wordpress 頁面 錨企業(yè)seo案例
  • python網(wǎng)站開發(fā)實踐網(wǎng)絡(luò)推廣方案設(shè)計
  • 幫客戶做網(wǎng)站的公司百度產(chǎn)品大全
  • 網(wǎng)站建設(shè) 上市公司深圳關(guān)鍵詞排名seo
  • 湘潭網(wǎng)站建設(shè) 技精磐石網(wǎng)絡(luò)網(wǎng)站發(fā)布與推廣
  • 可以做宣傳海報的網(wǎng)站今天國內(nèi)新聞
  • 重慶網(wǎng)站設(shè)計好的公司百度業(yè)務(wù)員聯(lián)系電話
  • 政府網(wǎng)站集約化平臺推廣策略都有哪些
  • 產(chǎn)品眾籌網(wǎng)站開發(fā)怎么自己做個網(wǎng)站
  • 怎么設(shè)置自己做的網(wǎng)站google網(wǎng)站
  • ps做圖賺錢網(wǎng)站trinseo公司
  • 門面設(shè)計裝修效果圖廣州seo優(yōu)化外包公司
  • 鹽山縣招聘網(wǎng)站建設(shè)seoheuni
  • 怎么在網(wǎng)站標題做logo小程序
  • 紅包網(wǎng)站開發(fā)百度點擊軟件找名風
  • 鎮(zhèn)江專業(yè)網(wǎng)站制作最有效的網(wǎng)絡(luò)推廣方式和策略
  • 免費加盟游戲代理搜索引擎優(yōu)化公司
  • 音樂在線制作網(wǎng)站網(wǎng)絡(luò)推廣產(chǎn)品公司
  • 免費畫圖網(wǎng)站東莞seo網(wǎng)絡(luò)推廣專
  • 怎樣優(yōu)古網(wǎng)絡(luò)公司網(wǎng)站后臺中國最好的網(wǎng)絡(luò)營銷公司