史上最简单的 MySQL 教程(二十三)「数据的高级操作 之 查询(上)」

温馨提示:本系列博文已经同步到 GitHub,地址为「mysql-tutorial」,欢迎感兴趣的童鞋StarFork,纠错。

数据的高级操作

查询数据(上)

  • 基本语法select + 字段列表/* + from + 表名 + [where 条件];
  • 完整语法select + [select 选项] + 字段列表[字段别名]/* + from + 数据源 + [where 条件] + [1] + [2] + [3]; + [1] = [group by 子句] + [2] = [order by 子句] + [3] = [limit 子句]

SELECT 选项

select选项,即select对查出来的结果的处理方式。

  • all:默认,保留所有的查询结果;
  • distinct:去重,将查出来的结果中所有字段都相同的记录去除。

执行如下 SQL 语句,进行测试:

-- 查询表 my_copy 中的数据
select * from my_copy;
select all * from my_copy;
select distinct * from my_copy;
6

字段别名

字段别名,即当数据进行查询的时候,有时候字段的名字并不一定满足需求(特别地,在多表查询的时候,很可能会有同名字段),这时就需要对字段进行重命名、取别名。

  • 基本语法字段名 + [as] + 别名;

执行如下 SQL 语句,进行测试:

-- 使用别名
select id,
name as 姓名,
age as 年龄,
grade as 年级
from student;
7

数据源

数据源,即数据的来源,关系型数据库的数据源都是数据表,本质上只要保证数据类似二维表,最终就可以作为数据源。

数据源分为 3 种,分别为:单表数据源,多表数据源和查询语句。

第 1 种:单表数据源

  • 基本语法select * from + 表名;
8

第 2 种:多表数据源

  • 基本语法select * from + 表名1,表名2...;
9

如上图所示,使用多表数据源时默认从一张表中取出一条记录去另外一张表中匹配所有记录,而且全部保留,比较浪费资源,应该尽量避免。

第 3 种:查询语句(子查询)

  • 基本语法select * from + (select * from + 表名) + [as] + 别名;
10

如上图所示,数据的来源是一条查询语句,而查询语句的结果是一张二维表。


温馨提示:符号[]括起来的内容,表示可选项;符号+,则表示连接的意思。


———— ☆☆☆ —— 返回 -> 史上最简单的 MySQL 教程 <- 目录 —— ☆☆☆ ————

原创声明,本文系作者授权云+社区-专栏发表,未经许可,不得转载。

如有侵权,请联系 zhuanlan_guanli@qq.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏前端儿

在PHP中使用MySQL Mysqli操作数据库 ,以及类操作方法

先来操作函数部分,普遍的MySQL 函数方法,但随着PHP5的发展,有些函数使用的要求加重了,有些则将废弃不用,有些则参数必填...

983
来自专栏用户画像

mysql模拟题二

  3) MSSQLServer2005Enterprise Edition是哪一种版本?

756
来自专栏Jackson0714

基础很重要~~04.表表达式-下篇

35216
来自专栏乐沙弥的世界

ORA-00932: inconsistent datatypes: expected - got CLOB

      最近数据库从10.2.0.3升级到了10.2.0.5之后,一些对象无法编译通过。查看了这些对象主要表现在之前写法不严格的SQL语法导致了这些pack...

823
来自专栏更流畅、简洁的软件开发方式

【自然框架】QuickPagerSQL——专门生成分页用的SQL的类库

   分享一个生成分页用SQL的函数库   一般一提到分页,大家就会想到存储过程,而大多数情况都是在存储过程里面拼接SQL,我觉得与其在存储过程里面拼接,还不如...

2295
来自专栏代码世界

Django中ORM介绍和字段及其参数

ORM介绍 ORM概念   对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的...

3548
来自专栏乐沙弥的世界

Oracle 外部表

外部表只能在Oracle 9i 之后来使用。简单地说,外部表,是指不存在于数据库中的表。通过向Oracle提供描述外部表的元数据,我们

562
来自专栏数据小魔方

MySQL数据库基础——本地文件交互

从这一篇开始,大概会花四五篇的内容篇幅,归纳整理一下之前学过的SQL数据库,一来可以为接下来数据分析工作提前巩固基础,二来把以前学的SQL内容系统化、结构化。 ...

31212
来自专栏魏琼东

一步一步教你使用AgileEAS.NET基础类库进行应用开发-基础篇-演示ORM的批量删除与更新

系列回顾           前面的文章一步一步教你使用AgileEAS.NET基础类库进行应用开发-基础篇-演示ORM的基本操作和一步一步教你使用AgileE...

1818
来自专栏FreeBuf

移位溢注:告别靠人品的偏移注入

在Access数据库类型注入的时候,我们获取不到列名(前提是有表名),一般会选择使用偏移注入,但是这种注入方式往往借助的是个人的人品,且步骤繁琐。本文中我们研究...

1906

扫描关注云+社区