mysql数据库查询操作类

来源:互联网 发布:stm32编程 编辑:程序博客网 时间:2024/05/19 17:25

数据查询

SELECT查询语句
WHERE子句
And & Or条件查询
模糊查询
联合多列
LIMIT限定行数
找出某列最大值
计算行数
进行表达式计算
分组查询

SELECT查询语句

            SELECT语句是常用的SQL查询命令,其语法结构如下:

            SELECT 字段 FROM 表名称

           SELECT之后为要查找的数据表的字段名,FROM子句指定要选择的数据表。SELECT命令用于根据某种规则从表中获取数据,如果查询多个字段,使用逗号将各个字段分隔开。

WHERE子句

            WHERE子句用来向SELECT语句中添加某种特定条件,以选出满足某种要求的数据。其语法结构如下:

           SELECT字段 FROM 表名称WHERE 列 运算符 值

           WHERE后面为要满足的条件,如表18-2列出的是可在WHERE子句中使用的运算符。

And & Or条件查询

           ANDOR都可以放在WHERE子句后进一步限定选择的条件。操作符AND在结合两个布尔表达式时,只有在两个表达式都为True时才返回True。操作符OR在结合两个布尔表达式时,只要其中一个条件为True时,便返回True。其具体用法通过下面的实例来讲解。

模糊查询

           LIKE用来进行模糊查询,一般与通配符“%”和下画线“_”搭配使用,通配符“%”匹配一个或多个字符,下画线“_”只匹配一个字符。下面通过实例来讲解LIKE的用法。

联合多列

           CONCAT命令可以将多个字段联合起来输出,这样便于观察。其语法结构为:

           SELECT字段CONCAT(字段,字段) as字段 FROM 表名称

           CONCAT后面的括号内的字段是要联合输出的字段。其具体用法通过下面的实例来讲解。

LIMIT 限定行数

         利用LIMIT子句可以控制查询结果的输出记录条数,也可以从中挑选记录,其用法通过下面的实例来讲解。

找出某列最大值

          如果查找某列的最大值,可以直接使用max()函数来完成,例如查找Persons表中年龄最大的。

计算行数

          COUNT()函数用来计数非NULL结果的数目。例如计算Persons表中的行数。

进行表达式计算

           可以利用MySQL计算表达式的值,也能对表中的记录进行表达式计算。下面通过实例来讲解表达式计算的过程。

分组查询

            通过group by子句可以将数据划分到不同的组中,根据所给的列名返回分组的查询结果,可用于查询具有相同值的列。

数据的其他操作

排序
插入数据
更新数据
删除数据
批量录入数据  

排序

          排序即根据某个或某些字段的值,按照从大到小或从小到大的排序的顺序进行排列。通过SQL命令ORDER BY子句可以进行数据的排序,其结构形式为:

           SELECT 字段FROM 表名称ORDERBY {字段[ ASC | DESC ] }

           ORDER BY后跟的字段名即为自定的排序根据,其结果可以按照ASC(递增方式排序,从最低值到最高值)或者DESC(递减方式排序,从最高值到最低值)的方式进行排序。默认方式为ASC

插入数据

           向表中插入新行可使用INSERTINTO语句,其语法结构为:

           INSERT INTO 表名称 VALUES (1,2,....)

           关键字VALUES之后为插入的字段值,其值要和字段一一对应,字段值之间用逗号分隔开。要插入某一列或几列时可使用如下结构:

         INSERT INTO 表名称 (1,2,...)VALUES (1,2,....)

更新数据

           更新数据是指对数据表里旧的数据做修改。修改表里的数据使用UPDATE语句,其语法结构如下:

           UPDATE 表名称SET 列名称 = 新值 WHERE列名称 运算符 某值

          关键字UPDATE之后为要修改的表的表名,而关键字SET之后是要修改的字段和相应的新值。WHERE子句进一步指明要修改的数据。

删除数据

             DELETE语句用于删除表中的行,其结构形式为:

           DELETE FROM 表名称 WHERE 列名称 =

           RFOM子句指定要删除数据的表,WHERE子句指定要删除的数据。DELETE语句返回被删除记录的数量。

 批量录入数据

           若要将大量数据插入到数据库中,使用INSERTINTO语句显得十分低效。更好的方法是使用LOAD DATE语句批量增加记录,其语法结构为:

             LOAD DATA [LOCAL] INFILE'file_name.txt' [REPLACE |  IGNORE] INTOTABLEtbl_name

           file_name.txt为当前目录中的数据文件的名称,tbl_name是要被载入的数据表。LOADDATA语句可以将一个文本文件中的数据高速读入一个表中。如果指定LOCAL关键词,将从客户机读文件。如果LOCAL没指定,则文件必须位于本服务器上。