数据库学习 day2 检索数据
上一节我们介绍了什么是数据库,以及一些基本的数据库术语
这一课介绍使用SELECT语句从表中检索一个或多个数据列。
关键字(Keyword)
作为SQL组成部分的保留字。关键字不能用作表和列的名字(类比C语言中的int、print等)。
1 SELECT语句
它是在SQL语句中最常使用的语句,作用是从一个或多个表中检索信息。
使用SELECT检索表数据,需要知道两个信息,我们要从哪里进行搜索,搜索哪些内容。
1.2 检索单列
SELECT column_name -- 列名
FROM table_name; -- 表名
解释:上述语句用 SELECT 语句从 table_name 表中检索一个名为 column_name 的列。
列名跟在SELECT后 表名跟在FORM后,这与我们的自然语言相同
注意:
- 没有明确排序查询的结果,则返回的数据没有特定的顺序,这个规定我们将在下一节进行介绍。
- 多条SQL语句必须加分号。
- SQL不区分大小写。
- 使用空格和回车的作用相同,所以SQL语句和写在一行或多行,但为了代码清晰易查建议分为多行。
1.3 检索多列
想从一个表中检索多个列,仍然需要使用 SELECT 语句。唯一的不同就是SELECT后面检索的内容需用逗号隔开。
SELECT column_name,column_name1,column_name2 -- 列名
FROM table_name; -- 表名
在本例中我们指定了3个列名,彼此用逗号相隔。
注意:
从SQL中检索出的数据都是原始的数据,无格式数据。规定其格式一般在具体应用该数据的应用程序中进行。
1.4 检索所有列
SELECT语句还可以检索出所有列而不必逐个列出它们的名字。在实际列名的位置使用星号(*)通配符可以做到这一点。
SELECT * -- 使用通配符
FROM table_name; -- 表名
给定通配符(*),则返回所有的列。使用通配符的可以检索出名字未知的列。
1.5 检索出不同的值
当检索结果中出现多个重复值时,我们希望每个只出现一次怎么办?比如搜索一个年级学生的班级信息就会出现大量的重复,我们只需要不同的班级值
办法就是使用DISTINCT关键字,顾名思义,它指示数据库返回不同的值。
SELECT DISTINCT column_name -- 检索不同的值
FROM table_name -- 表名
如果使用DISTINCT关键字,它必须放在列名前。
若DISTINCT关键字后有多列,不仅仅是作用于一列,而是所有列。
1.6 限制结果
SELECT返回指定列中的所有匹配列,而你想返回1列或指定数量的列怎么办呢?这在数据库操作中是可行的,但各个SQL软件实现方法不同。
这里只说明MySQL的实现方法,其他软件的可以根据需要自行查讯。
MySQL中需要使用LIMIT子句,像这样
SELECT column_name -- 列名
FROM table_name -- 表名
LIMIT 5;
LIMIT 5指示 MySQL 等 DBMS 返回不超过5行的数据。
为了得到后5行的数据,我们还需指定从哪里开始检索
SELECT column_name -- 列名
FROM table_name -- 表名
LIMIT 5 OFFSET 5;
注意:
第一个被检索的行是第0行,而不是第一行。所以,LIMIT 5 OFFSET 5 会检索第6行而不是第5行。
2 使用注释
我上面的语句均使用了注释,使用“--”后面空一格跟需要注释的内容
当然还有多行注释
/*this is a note
SELECT FROM
*/
SELECT column_name -- 列名
FROM table_name -- 表名
LIMIT 5 OFFSET 5;
这在我们调试代码时很有用,可以让你无需将错误的代码删除,只需注释掉它们就行了
数据库学习 day2 检索数据的更多相关文章
- 数据库学习任务四:数据读取器对象SqlDataReader、数据适配器对象SqlDataAdapter、数据集对象DataSet
数据库应用程序的开发流程一般主要分为以下几个步骤: 创建数据库 使用Connection对象连接数据库 使用Command对象对数据源执行SQL命令并返回数据 使用DataReader和DataSet ...
- 黑马MySQL数据库学习day02 表数据CRUD 约束CRUD
/* 基础查询练习: 1.字段列表查询 当查询全部字段时,一种简便方式,使用*代替全部字段(企业中不推荐使用) 2.去除重复行 DISTINCT,注意修饰的是行,也就是整个字段列表,而不是单个字段. ...
- 数据库学习其一 oracle11g数据泵导入导出
一.检查环境一致性 需检查数据库客户端与服务端字符编码,以避免后续各种各样的问题 查询服务端编码 注意最好用sqlplus查询,用plsql有时候会出现查询不一致问题,如下图同一个语句在plsql和s ...
- 吴裕雄--天生自然ORACLE数据库学习笔记:数据表对象
create table students( stuno ) not null, --学号 stuname ), --姓名 sex ), --性别 age int, --年龄 departno ) n ...
- 吴裕雄--天生自然ORACLE数据库学习笔记:数据导出与导入
create directory dump_dir as 'd:\dump'; grant read,write on directory dump_dir to scott; --在cmd下 exp ...
- ORACLE数据库学习之SQL性能优化详解
Oracle sql 性能优化调整 ...
- 学习笔记:oracle学习三:SQL语言基础之检索数据:简单查询、筛选查询
目录 1. 检索数据 1.1 简单查询 1.1.1 检索所有列 1.1.2 检索指定的列 1.1.3 查询日期列 1.1.4 带有表达式的select语句 1.1.5 为列指定别名 1.1.6 显示不 ...
- PHP 数据库驱动、连接数据不同方式学习笔记
相关学习资料 http://www.php.net/manual/zh/refs.database.php http://www.php.net/manual/zh/internals2.pdo.ph ...
- python学习笔记--Django入门三 Django 与数据库的交互:数据建模
把数据存取逻辑.业务逻辑和表现逻辑组合在一起的概念有时被称为软件架构的 Model-View-Controller (MVC)模式.在这个模式中, Model 代表数据存取层,View 代表的是系统中 ...
随机推荐
- django 从零开始 8 用户登录验证 待测
看文档 djang 自带一个用户登录验证的方法,不过有些看着懵逼,去网上找了一圈,发现很多都是照抄文档说明的,几乎没说啥原理 特别是 from django.contrib.auth import a ...
- go学习第五天、运算符
算术运算符 下表列出了所有Go语言的算术运算符.假定 A 值为 10,B 值为 20 运算符 描述 实例 + 相加 A + B 输出结果 30 - 相减 A - B 输出结果 -10 * 相乘 A * ...
- Vue2.0 【第二季】第5节 Template制作模板
目录 Vue2.0 [第二季]第5节 Template制作模板 第5节 Template制作模板 一.直接写在选项里的模板 二.写在template标签里的模板 三.写在script标签里的模板 Vu ...
- jadx初识
一.jadx介绍 一款相对流行的反编译工具 下载:https://github.com/skylot/jadx/releases/tag/v1.0.0 解压后得到这么几个文件: 启动:(以下来两个文件 ...
- AndroidStudio提高编译速度的几种方法
第一种: 减少依赖库的使用,让代码更加精简.对于一些必须依赖的库要尽量使用jar包或者依赖库,这样他每次就会在本地直接加载,而不是每次翻墙检查更新 第二种: 打开Android Studio,选择菜单 ...
- css hover 动画 transition:background-color 0.2s,color 0.2s; 外层套内层,正常是 里外层 鼠标上来 外层有hover,如果就想到里层hover触发外层hover,要用外层position 定义绝对定位,内层的hover跳出外层的div,这样视觉上就是两个单独的div,进行内外层联动。
css hover 动画 transition:background-color 0.2s,color 0.2s; 外层套内层,正常是 里外层 鼠标上来 外层有hover,如果就想到里层hover触发 ...
- Ubuntu下搭建.Net Core环境并发布MVC项目
支撑环境 1. Windows 10 1809 12月更新版本(其他版本应该也行,但建议不低于1809,过低的版本可能无法安装子系统ubuntu18.04 LTS) 2. ubuntu 18.04 L ...
- win10安装ubuntu子系统和图形界面
子系统可以很方便的调用windows的文件(在/mnt里就有各个盘),也可以在windows里用VScode编辑linux的文件.还是很方便的.也可以切出去用QQ微信. 安装子系统参考教程:https ...
- HDU 5448 Marisa’s Cake
给定一个由n个整点构成的凸多边形,求从n个点里任意选不少于3个点组成的所有凸多边形的面积之和,显然整点构成的多边形面积一定是0.5的整数倍,所以题目需要你算出答案的2倍 mod1000000007的值 ...
- SQLServer——MASTER..spt_values
常常见到这个表,人家用得天花乱坠的. 自己select一看却莫名其妙的. 如上, 这个表主要用来保存一些枚举值, 据说是从sybase继承过来,许多函数和存储过程可以看到它的身影.也可以叫系统常量表吧 ...