SQL
文章平均质量分 74
?CaMKII
这个作者很懒,什么都没留下…
展开
-
SQL回炉重造10_数据过滤_子查询
子查询 1. 子查询与过滤 子查询(subquery):即嵌套在其他查询中的查询,MySQL4.1之后开始支持子查询 /* 列出订购物品TNT2的所有客户: (1) 检索包含物品TNT2的所有订单的编号。 (2) 检索具有前一步骤列出的订单编号的所有客户的ID。 (3) 检索前一步骤返回的所有客户ID的客户信息。 */ # 不使用子查询 SELECT cust_name, cust_contact FROM customers as c, orders as o, orderitems as oi W原创 2021-05-22 13:55:08 · 161 阅读 · 1 评论 -
SQL回炉重造09_数据过滤_数据分组GROUP BY
数据过滤——分组数据 1. 数据分组 GROUP BY子句:实现将数据分为多个逻辑分组,对每个分组进行聚合计算 GROUP BY子句可以包含任意数目的列,这使得其可以对分组进行嵌套,为数据分组提供更细致的控制; 如果在GROUP BY子句中嵌套了分组,数据将会在最后规定的分组上进行汇总,也就是说,建立分组时指定的所有列都会在一起计算(不可以从个别列取回数据) GROUP BY 子句列出的每个列都必须是检索列或是有效的表达式(但不可以是聚合函数),如果在SELECT中使用表达式,则必须在GROUP BY原创 2021-05-20 20:07:16 · 213 阅读 · 0 评论 -
SQL回炉重造08_数据过滤_聚合函数
汇总数据 1. 聚集函数 聚集函数(aggregate function):运行在行组上,计算和返回单个值的函数 作用:对表中数据进行汇总,如确定表中行数(或满足某个条件/特定值的行数),获得表中行组的和,找出表列中极值、平均值等 SQL聚集函数: 函数 说明 AVG() 返回某列的平均值 COUNT() 返回某列的行数 MAX() 返回某列的最大值 MIN() 返回某列的最小值 SUM() 返回某列值之和 1.1 AVG()函数 AVG()函数原创 2021-05-19 17:23:48 · 123 阅读 · 0 评论 -
SQL回炉重造07_函数
数据处理函数 函数的可移植性没有SQL强:能够运行在多个系统上的代码称为可移植的(portable);SQL的可移植性比较好,在SQL实现之间有差异时,比较好处理;然而函数的可移植性却很差,差异很大。如果决定使用函数,一定要做好注释,以便以后可以确切地知道SQL代码的含义。 大多数SQL实现支持以下类型的函数: 用于处理文本串的文本函数(如删除或填充值,转换值为大写或小写等) 用于在数值数据上进行算术操作的数值函数(如返回绝对值,进行代数运算等) 用于处理日期和时间值并从这些值中提取特定成分的日期和时间原创 2021-05-18 13:21:41 · 153 阅读 · 3 评论 -
SQL回炉重造04_数据过滤_通配符&LIKE
数据过滤——通配符 通配符(wildcard):用来匹配值的一部分的特殊字符 搜索模式(search pattern):由字面值、通配符或两者组合构成的搜索条件 LIKE操作符:为了在搜索子句使用通配符,需要使用LIKE操作符,LIKE操作符指示数据库,后面跟着的搜索模式会利用通配符匹配而不是直接相等匹配。 谓词(predicate):从技术上讲,LIKE是谓词而不是操作符,虽然最终得到的结果是相同的。 1. 百分号%通配符 %通配符是最常使用的通配符,在搜索串中,%表示任何字符出现任意次数 区原创 2021-05-11 10:30:38 · 93 阅读 · 0 评论 -
SQL回炉重造06_计算字段
计算字段 计算字段:直接从数据库中检索出转换、计算或格式化过的数据;计算字段并不实际存在于数据库表中,而是运行时在SELEC语句内创建的。 字段(field):基本上与列(column)的意思相同,经常互换使用,不过数据库的列一般还是称为列,而字段则常用在计算字段的连接上。 1. 拼接字段 拼接(concatenate):将若干个值连结到一起构成单个值 Concat()函数:在MySQL的SELECT语句中,使用Concat()函数来完成两个列的拼接。 注意:多数DBMS使用+或||来实现拼接,但M原创 2021-05-11 10:29:10 · 86 阅读 · 0 评论 -
SQL回炉重造05_数据过滤_正则表达式
数据过滤——正则表达式 正则表达式(Regular Expression):是用来匹配文本的特殊的串(字符集合)。作用是匹配文本,将一个模式(正则表达式)与一个文本串进行比较。 但要注意,MySQL中的正则表达式仅支持正则表达式中的一小部分内容! 1. 基本字符匹配——特殊字符(.) REGEXP关键字:正则表达式的标识符,用于告诉数据库后面所跟的内容为正则表达式处理。 特殊字符**(.)**:作用是匹配任意一个字符 匹配不区分大小写:MySQL中的正则表达式匹配默认不区分大小写,为了实现区分原创 2021-05-10 21:29:50 · 274 阅读 · 0 评论 -
SQL回炉重造03_数据过滤_WHERE/NOT/IN
数据过滤 1. WHERE子句 1.1 WHERE子句基础语法 数据库表中一般会包括大量数据,我们很少会检索表中所有的行。通常只需要根据特定条件提取需要的行即可。只检索所需数据需要指定搜索条件(search criteria),搜索条件也称为过滤条件(filter condition)。 语法 SELECT colName FROM tableName WHERE filterCondition; # 例 SELECT prod_name,prod_price FROM products WH原创 2021-05-04 10:49:48 · 335 阅读 · 0 评论 -
SQL回炉重造02_数据检索_SELECT&ORDERBY
查询 SELECT语句:SELECT语句的用途是从一个或多个表中检索数据,需要给出两条信息:选择什么&&从什么地方选择。 1. 检索数据基础——SELECT语句 1.1 检索单个列 语法: SELECT colName FROM tableName; 数据顺序:在没有指定查询排序结果的情况下,返回数据的顺序是没有特殊意义的。 结束SQL语句:多条SQL语句需要以分号(;)结尾 注意:某些DBMS可能需要每一句单句SQL语句结尾都要加分号 SQL语句大小写:SQL语句原创 2021-05-04 09:09:17 · 112 阅读 · 0 评论 -
SQL回炉重造01_Introduction
Introduction to SQL 1. 数据库基础知识 数据库(database):保存有组织的数据的容器(通常是一个文件或一组文件) 注:我们平常使用的软件是数据库管理系统(DBMS),数据库DB是通过DBMS创建和操纵的容器。 表(table):表是一种结构化的文件,可以用来存储某种特定类型的数据。 存储在表中的数据应该是一种类型的数据,例如不可以将学生清单和课程清单存储在同一个表中,这会导致后续的检索和访问很困难。 表的名字即是表在数据库中的标识符,因此在同一个数据库中表的名字应该原创 2021-05-03 16:38:31 · 68 阅读 · 0 评论