if object_id('picTB')>0 drop table picTB create table picTB ( ID int, peopleid int, 图片地址 varchar(20) ) insert into pictb select 1, 1, 'a.jpg' union all select 2, 1, 'b.jpg' union all select 3, 1, 'c.jpg' union all select 4, 2, 'd.jpg' union all select 5, 2, 'e.jpg'select * from pictb --where id between 2 and 4 where id >2 and id <4 只能输入2和4那么下面的貌似用上面的无法实现吧? between and 有包含的意思,运算符可以设置为不包含。是这个意思吗?
>= and <= 的另一写法,如果英文为母语,可能用between and 表示与实际业务更相似,更易理解!从两者实际表过方面的区别, between and 只能表示一封闭的范围 但>= and <=既可表示封闭的范围,也可表示向两端发散的,甚至是全部范围。其实,面试的问答,是一沟通过程,单单问此问题,难免大家想到不同点,当时LZ为何不立即请教考官,也不用再发此帖。
if object_id('picTB')>0
drop table picTB
create table picTB
(
ID int,
peopleid int,
图片地址 varchar(20)
)
insert into pictb
select 1, 1, 'a.jpg'
union all
select 2, 1, 'b.jpg'
union all
select 3, 1, 'c.jpg'
union all
select 4, 2, 'd.jpg'
union all
select 5, 2, 'e.jpg'select * from pictb
--where id between 2 and 4
where id >2 and id <4
只能输入2和4那么下面的貌似用上面的无法实现吧? between and 有包含的意思,运算符可以设置为不包含。是这个意思吗?
between..and 范围返回两个指定 值之间的所有值(包括与两个指定值匹配的值)
运算符不包括与限定范围的值相匹配的行。
应该 是 where date>='2010-09-09' and date <'2010-09-10'
此时不能用between..and
between and 只能表示一封闭的范围
但>= and <=既可表示封闭的范围,也可表示向两端发散的,甚至是全部范围。其实,面试的问答,是一沟通过程,单单问此问题,难免大家想到不同点,当时LZ为何不立即请教考官,也不用再发此帖。
between and 比运算符快。