当前位置:天才代写 > tutorial > 数据库教程 > Mysql基础教程(四) Mysql数据表操作之增删改查

Mysql基础教程(四) Mysql数据表操作之增删改查

2021-02-05 14:17 星期五 所属: 数据库教程 浏览:588

插进数据信息是向早已存有的数据分析表中加上一条新的纪录,应当应用INSERT INTO句子。

文件格式:

INSERT INTO 表名 [(字段1,字段2,…字段n)] VALUES(‘值1’,‘值2’,…,’值n’);

或是

INSERT INTO 表名 [(字段1,字段2,…字段n)] VALUES(‘值1’,‘值2’,…,‘值n’),VALUES(‘值1’,‘值2’,…,’值n’);

 

SQL句子能够应用UPDATE句子对表中的一列或两列数据信息开展改动,务必特定必须改动的字段名,而且必须授予的新值。也要得出必需的WHERE子句特定要升级的数据信息行。

文件格式:

UPDATE 表名 SET 字段=关系式 [,…][WHERE 标准] [ORDER BY 字段名][LIMIT 个数]

 

DELETE句子用于删掉数据分析表中的一条或好几条数据信息纪录。

文件格式:

DELETE FROM 表名 [WHERE 标准][ORDER BY 字段名][LIMIT 个数]

 

查看句子能够进行简易的单表查看,还可以进行繁杂的多表查询和嵌入查看。SELECT句子关键用以数据信息的查看查找,是SQL语言表达的关键,在SQL语言表达中SELECT句子的应用頻率是最大的。

文件格式:

SELECT [ALL|DISTINCT]{*|table.*|[table.]field1[AS alias1][,[table.]field2[AS alias2][,…]]}FROM 表名  [WHERE子句] [GROUP BY..][HAVING..][ORDER BY..][LIMIT count];

 

非常简单的查看句子是应用SELECT句子查找纪录的特殊字段名,好几个字段名可以用分号隔开,比如:

SELECT username,password FROM user;

还可以应用*从表格中查找出全部字段名,应用“SELECT *”主要是对于客户的撰写便捷来讲的。

假如一张表之中的数据信息多少上百万,就代表着資源的消耗和悠长的查看等候,因此 具体运用时要尽量减少应用它,而把查看的字段名精确地整理出来,还可以按自身特定的列次序輸出。

 

假如想为回到的列取一个新的题目,及其历经对字段名的测算或小结以后,造成了一个新的值,期待把它放进一个新的列里表明,则用AS保存。

比如:在上例的輸出結果中应用汉语字段,能够在MySQL控制面板中键入的指令以下所显示:

SELECT username as ‘登录名’ FROM user;

界定别称时一定要应用单引号造成来,在其中AS关键词是可选择的,在原字段和别称中间应用一个空格符就可以。

SELECT username ‘登录名’ FROM user;

 

假如在应用SELECT句子回到的纪录結果中包括反复的纪录,能够应用DISTINCT关键词撤消反复的数据信息,只回到一个。

此外,要留意DISTINCT关键词的功效是全部查看的目录,而不是独立的一列。

DISTINCT会耗费一定的服务器空间,如果不特定,会默认设置应用ALL关键词做为查找方式。

SELECT DISTINCT gid FROM user_group;

 

在SQL中的关系式使用方法和PHP程序流程类似,关键包含算数关系式、逻辑运算,及其应用SQL函数表达式等。 比如:

SELECT version(),1.23*10;

 

在SELECT句子中,能够应用WHERE子句特定检索标准,完成从数据分析表中查找出满足条件的纪录。在其中,检索标准能够由一个或好几个逻辑运算构成,这种关系式特定有关某一纪录是真或假的标准。在WHERE子句中,能够根据逻辑性操作符和较为操作符特定基础的关系式标准。

 

逻辑性操作符

操作符

英语的语法

叙述

AND 或 &&

a AND b 或 a && b

逻辑,若2个操作数另外为真,则为真

OR 或 ||

a OR b 或 a||b

逻辑或,只需有一个操作数为真,则为真

XOR

a XOR b

逻辑性异或,若只有一个操作数为真,则为真

NOT 或 !

NOT a 或 !a

逻辑非,若操作数为假,则为真

 

较为操作符

数据信息列种类

储存空间

表明

取值范围

=

a=b

若操作数a与操作数b相同,则为真

<=>

a<=>b

若a与b相同,则为真,能够用以NULL值较为

!=或<>

a!=b或a<>b

若操作数a与b不相同,为真

<

a

若操作数a低于b,为真

<=

a<=b

若操作数a大于b,为真

>

a>b

若操作数a大于b,为真

>=

a>=b

若操作数a大于相当于b,为真

IS NULL

a IS NULL

若操作数a为NULL,为真

IS NOT NULL

a IS NOT NULL

若操作数a不以NULL,为真

BETWEEN

a BETWEEN b AND c

若a在b和c中间,为真

 

较为操作符

数据信息列种类

储存空间

表明

取值范围

NOT BETWEEN

a NOT BETWEEN b AND c

若操作数a没有b和c中间,为真

LIKE

a LIKE b

SQL模式匹配,若a配对b,为真

NOT LIKE

a NOT LIKE b

SQL模式匹配,若a不配对b,则为真

IN

a IN (b1,b2….)

若a等于b1,b2,b3,…中的某一个,则为真

 

在结构检索标准时,要留意只有对数值数据种类的纪录开展算术运算,而且只有在同样的基本数据类型中间开展纪录的较为。

 

依据空值(NULL)明确查找标准

空值只有界定在容许NULL字段名中出現,NULL值是独特的值,意味着“无值”,与零值(0)和空字符串('')也不同样。当在不兼容初始值的字段名中未键入值,或在字段名中显式的设定为空,便会出現空值,但不能用解决已经知道值的方法来解决NULL。为了更好地开展NULL值的检索,务必选用独特的英语的语法。假如要查找NULL值,务必应用IS NULL和IS NOT NULL关键词。

 

应用BETWEEN AND开展范畴较为查看

假如必须对某一字段名根据范畴的值开展较为查看,能够应用BETWEEN AND关键词完成,在其中AND是多种标准标记,较为时也包含初始条件。还可以应用“>=”和“<=”进行一样的作用。

 

应用IN开展范畴核对查看

在WHERE子句中,应用IN关键词并在后面的括弧“()”中出示一个值的目录,以便与相对的字段名开展较为。该目录中最少应当存有一个值,如果有好几个值能够应用分号“,”隔开。

 

应用LIKE开展模糊搜索

在SELECT句子的WHERE子句中,能够应用LIKE关键词对数据分析表中的纪录开展模糊搜索,将查看結果锁住在一个范畴内。在查询条件中一般 会与“_”和“%”2个使用通配符一起应用,能够完成繁杂的查找查看。这两个使用通配符的含意各自以下:     

百分号“%”:表明0个或随意好几个标识符。     

下划线“_”:表明单独的随意一个字符。 反过来的,不配对大家应用NOT LIKE

 

应用ORDER BY对查看結果排列

应用SELECT句子读取数据表格中的数据信息时,回到的纪录一般是无规律排序的,有可能每一次获得的查看纪录迥然不同。为了更好地应用查找的結果便捷阅读文章,能够在SELECT句子中应用ORDER BY子句,对查找的結果开展排列。 ORDER BY后边能够接一列或两列用以排列的字段名,而且应用DESC或ASC关键词设计方案字段名排列的方法。

默认设置状况下依照升序排序,即应用ASC关键词。不然要依照降序排序,务必应用DESC关键词。ORDER BY子句能够和SELECT句子中的别的子句一起应用,但在子查询中不可以有ORDER BY子句,由于ORDER BY子句只有对最后查看結果排列。

 

应用LIMIT限制結果个数

假如在数据分析表中的纪录数十分多,一次从表格中回到很多的纪录不但查找的速度比较慢,客户阅读文章也很不方便。因此 在根据SELECT句子查找时,应用LIMIT子句一次取小量的纪录,而用分页查询的方法继续阅读后边的数据信息。

LIMIT子句还可以和别的的SELECT子句一起应用,它能够特定2个主要参数,各自用于设定回到纪录的起止部位,和回到纪录的总数。

LIMIT子句还可以只应用一个主要参数,表明从开始部位,即偏移为0的部位回到特定总数的纪录,在上例中应用的“LIMIT 0, 5”等额的于“LIMIT 5”。

 

应用统计函数 

在数据库管理中出示了一系列的内嵌统计函数,在SQL查看中应用这种统计函数能够更合理地解决数据信息。这种统计函数把储存在数据库查询中的数据信息,叙述为一个总体而不是一行行独立的纪录。

统计函数 

描    述 

COUNT()

回到考虑SELECT句子中特定标准的纪录数,比如,COUNT(*)回到寻找的纪录个数

SUM()

一般 为数值字段或表述列作统计分析,回到一列的总数

AVG()

一般 为数值字段或表述列作统计分析,回到一列的均值

MAX()

能够为数值字段、标识符字段名或表述列作统计分析,回到一列中较大 的值

MIN()

能够为数值字段、标识符字段名或表述列统计分析,回到一列中最少的值

这种涵数一般 用在SELECT子句中,做为結果数据的字段名回到的結果。在SELECT句子的SELECT子句中应用涵数的英语的语法以下: SELECT 涵数名(字段名1 或*),…涵数名(字段名n) FROM 表名;        #应用统计函数

 

应用GROUP BY对查看結果排序

前边应用统计函数回到的是全部纪录的统计分析結果,假如要对数据信息开展排序统计分析,就必须应用GROUP BY子句。这将能够容许客户在对数据信息开展归类的基本上,开展再查看。GROUP BY子句将表按列值排序,列的值同样的分成一组。假如GROUP BY后边有好几个字段名,则先按第一个字段名排序,再在每一组中按第二个字段名排序。

必须留意的是,在GROUP BY子句中不兼容对字段名分派别称,也不兼容一切应用了统计函数的结合列。 在进行数据信息結果的排序查看和统计分析后,还能够应用HAVING子句来对查看的結果,开展进一步的挑选。 在SELECT句子的子句中:WHERE子句挑选所必须的行;GROUP BY子句开展了必需的排序梳理;而HAVING子句对最终的排序結果开展了再次挑选。

 

查看提升 

EXPLAIN句子是检验数据库索引和查看可否优良配对的简易方式。

假如想检验 SELECT * FROM table WHERE a>’0’ AND b<’1’ ORDER BY c; 这条句子的特性能够:

EXPLAIN SELECT * FROM table WHERE a>’0’ AND b<’1’ ORDER BY c;

 

多表查询(连接查询)

多表查询给客户产生非常大的协调能力,能够在任何时刻提升新的基本数据类型,为不一样实体线建立新的表,随后根据联接开展查看。包含二种方式:

有关多表查询,这儿早已独立分离出来一节而言;详细信息能够收看 内部链接

 

嵌入查看(子查询)

这类查看是在一个SELECT句子的WHERE子句中,包括另一个SELECT句子,还可以称之为子查询。在子查询中只有回到一列,并将产生的結果又做为父查看的标准,在主句中开展进一步查看。 SQL语言表达容许双层嵌入查看,即一个子查中还能够有别的子查询。嵌入查看的求得方式是由里向外解决,即每一个子查询全是在上一级查询处理以前求得,子查询的結果用以创建父亲查看的搜索标准。

有关子查询,这儿早已独立分离出来一节而言;详细信息能够收看 内部链接

 

 

上边都是事例和文本干货知识,会独立有一节举一些事例供大伙儿参照或是训练

内部链接

 

 

 

    关键字:

天才代写-代写联系方式