SQL是英文Structured Query Language的缩写,意思为结构化查询语言。其主要功能就是同各种数据库建立联系,进行沟通。所以SQL最重要的功能就是查询数据库的数据。
例如,在审计中,尤其是内审中,审计人员可以获得授权,取得企业各个业务、财务系统数据库的访问地址、用户名和密码,然后可以直联数据库,在海量的数据中查询所需要的数据。
下面,我们来了解一下SQL的基本语法,并在下一部分简要介绍一下SQL的基本语句。感兴趣的同学可以到【拓展资源】中,获取My SQL安装文档,自行安装及进行相关的操作练习。
(1)不区分大小写。SQL语句不区分大小写,意思是我们可以使用大写或者小写,效果都是一样的。但是为了便于阅读和调试代码,比较规范的做法是,SQL的关键字大写,表名或者字段名小写。
(2)多条语句分号分隔。对于单条SQL语句来说,在结尾处加分号或者不加分号都是可以的,但是多条SQL语句必须以分号分隔。
(3)必须用英文标点符号。SQL语句中所使用的标点符号,必须是英文状态的标点符号,如果使用中文的标点符号会报错。
(4)空格会被忽略。在处理SQL语句时,所有的空格都会被忽略,我们可以把一条SQL语句写在一行上,也可以分开写在多行上。比较好的习惯是将SQL语句写在多行上,这样可以使代码更容易阅读和调试,如下。
(1)常用SQL基本语句列表
(2)任务实战
①增删数据库。
在进行SQL命令操作前,要先连接mysql服务器,相应的代码示例如下:
如果是通过MySQL Workbench进行相关操作,需要先创建链接,然后通过该链接进入工作台即可。
DROP DATABASE my_database;
②增删数据表。
③查询数据。
使用以下命令前需要使用USE命令指定数据库。
④按照条件查询数据。
在实际工作中,我们用到的数据库表一般都比较大,记录条数在百万级甚至千万级。对于记录数比较多的表,只有在极少数情况下,人们才需要查询表里的全部数据。当我们只需要查询表里的部分数据时,我们要在查询数据的时候指定查询条件。
WHERE语句可以指定查询条件,可以在WHERE子句中使用的操作符包括:= ,>,<,> =,< =,<>,BETWEEN AND,LIKE等。
●列的类型为数值时
●列的类型为字符串时,在和列值进行比较时,需要给列值加上引号。
LIKE操作符,主要在过滤模糊值时使用。一般会与通配符(%、_)结合使用。
%为通配符,表示任何字符出现任意次数。与%能匹配若干个字符不同,_总是刚好匹配一个字符。
通配符查询只能用于文本字段,非文本数据类型字段不能使用通配符搜索。
多条件查询时,可以使用OR、AND操作符将多个条件组合在一起。AND用来指示查询满足所有给定条件的行。OR用来指示查询满足任一给定条件的行。
⑤数据排序。
ORDER BY+要排序的列字段名:按照哪里进行排序,默认按升序排序(如需明确指定用“ASC”),如需要按照降序排序,则需要在后面加上“DESC”。
#从products中查询prod_name并按照升序排列
SELECT prod_name FROM products ORDER BY prod_name;
如需要对多列进行排序,则在ORDER BY后加多个列字段名,中间用逗号隔开。如需要哪个字段按照降序排列,则在哪个字段名后面加上“DESC”。
⑥数据汇总/统计。
Group by:
Group by字段名 #以该字段唯一值为汇总依据
Count:
count(字段名)#对该字段进行计数
count(∗)表示对所有字段进行统计
Sum:
sum(字段名)#对该字段求和
AVG:
avg(字段名)#对该字段求平均值
⑦更新/插入/导入数据/导出数据。
更新数据(修改数据)
插入数据
导入数据
导出数据
MySQL Workbench中提供了导入数据和导出数据的快捷方式,跟随导航可以完成数据表的导入和导出,如图 3-1 所示。
图 3-1 MySQL Workbench导入数据和导出数据