SQL之检索数据(select语句)

1.keywords(关键字)

关键字不能用作表或者列的名字。

2.1检索单个列

select prod_name
from Products;

上述语句从Products表中检索一个名为prod_name的列。Select关键字后面是列名,from关键字后面是表名。

多条SQL语句必须用分号(;)间隔,单条SQL最好后面也加上分号。

SQL语句是不区分大小写的。所有的空格都是被忽略的。

2.2检索多个列

select prod_id,prod_name,prod_price
from Products;

多个列时,列名之间加上逗号。但是最后一个列不加。

2.3 检索所有列

select *
from Products;

*号代表所有项,但是最好不要使用,一般会造成性能问题。

2.4 检索不同值

select DISTINCT vent_id
from Products;

DISTINCT只返回不同的具有唯一性的vent_id行。

注意:不能部分使用DISTINCT,这个关键字会作用于所有的列,不仅仅是跟在后面的那一列。

3 限制结果

在SQL Server和Access中

select TOP 5 prod_name
from Products;

使用TOP关键字来限制最多返回多少行。

如果使用MySQL,MariaDB或者SQLite,则使用LIMIT关键字。

select prod_name
from Products
limit 5;

如果想指定从第几行开始。

select prod_name
from Products
limit 5 offset 5;

这代表从第5行起的5行数据。

注意:第一个被检索的是第0行,而不是第1行。所以Limit 1 offset 1 会检索第2行,而不是第1行。

原文地址:https://www.cnblogs.com/haoqirui/p/10351106.html

时间: 2024-10-12 03:13:37

SQL之检索数据(select语句)的相关文章

[sql server] 如何阻止SELECT * 语句

我们每个人都知道是个不好的做法,但有时我们还是要这样做:我们执行SELECT * 语句.这个方法有很多弊端: 你从你的表里返回每个列,甚至后期加的列.想下如果你的查询里将来加上了VARCHAR(MAX)会发生什么…… 对于指定的查询,你不能定义覆盖非聚集索引来克服执行计划里的查找(lookup)运算符,因为你会在额外的索引里重复你的数据…… 现在的问题是你如何阻止SELECT *语句?当然你可以进行代码审核,你可以提供最佳模式指导,但谁最终会留意这些?基本上没有人——很遗憾这就就是令人伤心的事实

sql子查询 嵌套SELECT语句

嵌套SELECT语句也叫子查询,一个 SELECT 语句的查询结果能够作为另一个语句的输入值.子查询不但能够出现在Where子句中,也能够出现在from子句中,作为一个临时表使用,也能够出现在select list中,作为一个字段值来返回. 1.单行子查询 :单行子查询是指子查询的返回结果只有一行数据.当主查询语句的条件语句中引用子查询结果时可用单行比较符号(=, >, <, >=, <=, <>)来进行比较. 例:select ename,deptno,salfrom

【SQL】INSERT INTO SELECT语句与SELECT INTO FROM语句

INSERT INTO SELECT语句与SELECT INTO FROM语句,都是将一个结果集插入到一个表中: #INSERT INTO SELECT语句 1.语法形式: Insert into Table2(field1,field2,…) select value1,value2,… from Table1 或 Insert into Table2 select * from Table1 2.限定条件: (1)Table2必须存在,并且字段field,field2…也必须存在: (2)如

04 检索数据 - select

检索一列或多列 <1>select 列名1 [,列名2] [,列名3]... from 表名 <2>select prod_name from products; <3>select prod_id, prod_name, prod_price from products; <4>多条SQL语句必须使用分号(;)分隔 <5>MySQL不要求在单条SQL语句后加分号,但加上总没有坏处:此外,如果在mysql命令行中,必须加上分号来结束SQL语句 &

[SQL Server 2005/2008] select语句中指定索引

一般情况下,SQL Server的查询优化器会对查询做优化,选择适合的索引. 当遇到一些宽表,索引和where 过滤条件多时, 查询优化器选择的可能并不是最佳的索引, 此时需要手动指定索引.具体效果可以在“执行计划中查看”. select * from 表名 with (nolock, index(索引表)) where ........

SQL Server 数据库的SELECT 语句基本用法介绍

一.    基本语法结构 (1) 新建查询 如何查询表的所有内容 SELECT * FROM表名 (2) 选中查询列 如何查询指定表中的指定列,查询多列得用英文’,’隔开 SELECT字段1,字段2,字段…… FROM表名 (3) 如何为列指定别名(AS关键字) (4) 语句大小写的区别 select.字段等关键字大小写的区别 条件里的大小写区别 (5) 运算符介绍 加减乘除:+ - * / 比较运算符:><>= <= <> 二.    查询脚本 (1) 查询stude

使用SELECT语句检索数据

使用SELECT语句检索数据select指令适用于SQL数据库SELECT 语句用于从数据库中选取数据.(指令不分大小写,选择的值除名字和一些有特殊意义的字符可不分大小写,from结束时一定要加;) 1.用法select column_name from table_name;1select 标识选择那些列from 标识从哪个表中选择 实例SQL> select * from dept ; DEPTNO DNAME LOC---------- -------------- -----------

SQL语句检索数据排序及过滤

阅读目录 一:排序检索数据 二:过滤数据 三:高级数据过滤 四:用通配符进行过滤 回到顶部 一:排序检索数据 1.1 排序数据 比如查询数据库中表数据的时候,我们使用如下语句: select * from user; 如下所示: 但是上面查询出来的数据并没有排序过的,因此如果我们想让数据进行排序,我们可以使用 order by子句.order by 子句会以字母顺序排序数据的.如下排序代码: select * from user order by username; 如上的含义是:查询user表

数据库SQL语句学习笔记(3)-排序检索数据

1.排序数据 如果不排序,数据一般将以它在底层表中出现的顺序显示,这有可能是数据最初添加到表中的顺序.但是如果数据随后进行过更新或删除,这个顺序就会受到DBMS重用回收存储空间的方式的影响. 子句:SQL语句由子句构成,有些子句是必须的,有些则是可选的.一个子句通常是由关键字加上所提供的数据组成.例如我们上个笔记中提到的SELECT语句中的FROM子句. 排序需要用到ORDER BY子句 SELECT prod_name FROM Products ORDER BY prod_name; 一定要