Sql Server 中 in 和 between 的用法..?

发布网友 发布时间:2022-04-23 15:34

我来回答

11个回答

懂视网 时间:2022-04-10 14:45

在数据库里between用法,between A and B 是包含A不包含B。

且必须是A小于B才行!!!比如,between 1 and 10是大于等于1到10不包括10的范围,但如果你写的是between 10 and 1 ,当你输入1-10的数字时是判断为错的,因为它先跟10对比发现小于10就不会进入了!!!

SQLServer---between

标签:不包含   tween   server   包括   log   大于等于   div   blog   数据   

热心网友 时间:2022-04-10 11:53

操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。

IN 操作符允许我们在 WHERE 子句中规定多个值。IN 操作符允许我们在 WHERE 子句中规定多个值。

扩展资料

结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。

参考资料SQL_ 百度百科

热心网友 时间:2022-04-10 13:11

操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。

IN 操作符允许我们在 WHERE 子句中规定多个值。IN 操作符允许我们在 WHERE 子句中规定多个值。


扩展资料:

结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。

1986年10月,美国国家标准协会对SQL进行规范后,以此作为关系式数据库管理系统的标准语言(ANSI X3. 135-1986),1987年得到国际标准组织的支持下成为国际标准。不过各种通行的数据库系统在其实践过程中都对SQL规范作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用

参考资料:SQL_ 百度百科

热心网友 时间:2022-04-10 14:46

操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。

例如:SELECT column_name(s)

FROM table_name

WHERE column_name

BETWEEN value1 AND value2

2.in:IN 操作符允许我们在 WHERE 子句中规定多个值。

例如:SELECT column_name(s) 

FROM table_name 

WHERE column_name IN (value1,value2,...)

扩展资料:

SQL 语句后面的分号:

某些数据库系统要求在每条 SQL 命令的末端使用分号。在我们的教程中不使用分号。分号是在数据库系统中分隔每条 SQL 语句的标准方法,这样就可以在对服务器的相同请求中执行一条以上的语句。

如果您使用的是 MS Access 和 SQL Server 2000,则不必在每条 SQL 语句之后使用分号,不过某些数据库软件要求必须使用分号。

参考链接:w3school-sql server语法

热心网友 时间:2022-04-10 16:37

  1、BETWEEN 是在一个范围 (range) 内抓出数据库中的值。BETWEEN 这个子句的语法如下:

  这将选出栏位值包含在值一及值二之间的每一笔资料。

  举例来说,若要由 Store_Information 表格中找出所有介于 January 6, 1999 及 January 10, 1999 中的资料,

  则输入,

  注意:在不同的数据库中,日期的储存法可能会有所不同。这里选择了其中一种储存法。

  结果:


  2、在 SQL 中,在这个用法下,事先已经知道至少一个需要的值,而将这些知道的值都放入 IN这个子句。 IN 指令的 语法为下:

  在括弧内可以有一或多个值,而不同值之间由逗点分开。值可以是数目或是文字。若在括弧内只有一个值,那这个子句就等于

  若要在以下的 Store_Information 表格中找出所有含盖 Los Angeles 或 San Diego 的资料,

  则输入,

  结果:


   

热心网友 时间:2022-04-10 18:45

常用的情况:between:select * from [tablename] where [日期] between '2008-01-01' and '2008-10-31' --查询字段[日期]在2008-01-01(含)至2008-10-31(含)之间 表tablename的记录。

in:select * from [tablename] where [日期] in ('2008-01-01','2008-02-01','2008-03-01') --查询表tablename中[日期]是2008年第一季度第一天的记录select * from [tablename] where [日期] in (select [日期] from [tb] where 条件... )--查询表tablename里[日期]在 (表tb 里符合条件 的 日期)。

拓展资料:

SQL Server 是Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2012 的大型多处理器的服务器等多种平台使用。

Microsoft SQL Server 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。

热心网友 时间:2022-04-10 21:10

IN
确定给定的值是否与子查询或列表中的值相匹配。

语法
test_expression [ NOT ] IN
(
subquery
| expression [ ,...n ]
)

参数
test_expression

是任何有效的 Microsoft® SQL Server™ 表达式。

subquery

是包含某列结果集的子查询。该列必须与 test_expression 有相同的数据类型。

expression [,...n]

一个表达式列表,用来测试是否匹配。所有的表达式必须和 test_expression 具有相同的类型。

结果类型
布尔型
示例
A. 对比 OR 和 IN
下面的示例选择名称和州的列表,列表中列出所有居住在加利福尼亚、印地安纳或马里兰州的作者。

USE pubs

SELECT au_lname, state
FROM authors
WHERE state = 'CA' OR state = 'IN' OR state = 'MD'

但是,也可以使用 IN 获得相同的结果:

USE pubs

SELECT au_lname, state
FROM authors
WHERE state IN ('CA', 'IN', 'MD')

以下是上面任一查询的结果集:

au_lname state
-------- -----
White CA
Green CA
Carson CA
O'Leary CA
Straight CA
Bennet CA
Dull CA
Gringlesby CA
Locksley CA
Yokomoto CA
DeFrance IN
Stringer CA
MacFeather CA
Karsen CA
Panteley MD
Hunter CA
McBadden CA

(17 row(s) affected)

-------------------------------------------------------------
BETWEEN
指定测试范围。

语法
test_expression [ NOT ] BETWEEN begin_expression AND end_expression

参数
test_expression

是用来在由 begin_expression 和 end_expression 定义的范围内进行测试的表达式。test_expression 必须与 begin_expression 和 end_expression 具有相同的数据类型。

NOT

指定谓词的结果被取反。

begin_expression

是任何有效的 Microsoft® SQL Server™ 表达式。begin_expression 必须与 test_expression 和 end_expression 具有相同的数据类型。

end_expression

是任何有效的 SQL Server 表达式。end_expression 必须与 test_expression 和 begin_expression 一样具有相同的数据类型。

AND

作为一个占位符,表示 test_expression 应该处于由 begin_expression 和 end_expression 指定的范围内。

结果类型
Boolean

示例
A. 使用 BETWEEN
本例返回书的题头标识符,这些书的年度至今单位销售额是从 4,095 到 12,000。

USE pubs
GO
SELECT title_id, ytd_sales
FROM titles
WHERE ytd_sales BETWEEN 4095 AND 12000
GO

下面是结果集:

title_id ytd_sales
-------- -----------
BU1032 4095
BU7832 4095
PC1035 8780
PC8888 4095
TC7777 4095

(5 row(s) affected)

热心网友 时间:2022-04-10 23:51

in 是集合中的属于的意思
between是在什么之间
eg:select 城市 from 职工 where 仓库号 in;
(select 仓库号from 职工 where 工资=1000)
意思是那些仓库号属于职工的工资为1000元
eg:select * from 职工where工资between1000and2000
意思是选出工资在1000到2000元之间的

热心网友 时间:2022-04-11 02:49

很好区别啊!

IN后跟的是集合
BETWEEN后跟的是区间!

热心网友 时间:2022-04-11 06:04

常用的情况:
between:
select * from [tablename] where [日期] between '2008-01-01' and '2008-10-31'
--查询字段[日期]在2008-01-01(含)至2008-10-31(含)之间 表tablename的记录。

in:
1、select * from [tablename] where [日期] in ('2008-01-01','2008-02-01','2008-03-01')
--查询表tablename中[日期]是2008年第一季度第一天的记录
2、select * from [tablename] where [日期] in (select [日期] from [tb] where 条件... )
--查询表tablename里[日期]在 (表tb 里符合条件 的 日期)。

热心网友 时间:2022-04-11 09:35

常用的情况:
between:
select * from [tablename] where [日期] between '2008-01-01' and '2008-10-31'
--查询字段[日期]在2008-01-01(含)至2008-10-31(含)之间 表tablename的记录。
in:
1、select * from [tablename] where [日期] in ('2008-01-01','2008-02-01','2008-03-01')
--查询表tablename中[日期]是2008年第一季度第一天的记录
2、select * from [tablename] where [日期] in (select [日期] from [tb] where 条件... )
--查询表tablename里[日期]在 (表tb 里符合条件 的 日期)。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com