sql語句問題,關於BETWEEN AND和DATE的

2022-05-22 04:15:21 字數 5097 閱讀 9702

1樓:肥仙女愛遊戲

1、開啟sqlservermanagementstudio管理工具,連線上資料庫,建立一張測試表,用於測試between...and查詢結果是否包含邊界值。

createtabletestbteween(

col1varchar(200)notnull,

col2varchar(200)null,

col3intnull

2、往測試表testbetween中插入幾行測試資料。

insertintotestbteween(col1,col2,col3)values('第1行','hello',10);

insertintotestbteween(col1,col2,col3)values('第2行','world',20);

insertintotestbteween(col1,col2,col3)values('第3行',null,null);

insertintotestbteween(col1,col2,col3)values('第4行','hello',40);

insertintotestbteween(col1,col2,col3)values('第5行','world',50);

3、查詢表中的所有測試資料。

select*fromtestbteween;

4、使用between...and查詢col3數字列在10到40之間的結果,從執行結果可以看出,10、40都包含在了查詢結果中,說明between...and查詢結果是包含邊界值的。

select*fromtestbteweenwherecol3between10and40;

5、使用between...and查詢col3數字列在10到30之間的結果,從結果可以看出,只要等於一個邊界值就會查詢出來。

select*fromtestbteweenwherecol3between10and30;

6、使用between...and查詢col1中文列在第1行到第3行之間的結果,從結果可以看出,也是包含邊界值的。

select*fromtestbteweenwherecol1between'第1行'and'第3行';

7、使用between...and查詢col2英文列在hello到world之間的結果,從結果可以看出,也是包含邊界值的。

select*fromtestbteweenwherecol2between'hello'and'world';

2樓:

select .. from ... where 欄位名(這裡是時間格式) between 日期格式1 and 日期格式2

因為2011 -05 -06不是日期,得轉化為日期格式,現在只是字串

3樓:匿名使用者

例如 #05/12/2005# 的前一天和後一天之間: select * from table1 where [date] <=dateadd("d",1,#05/12/2005#) and [date] >=dateadd("d",-1,#05/12/2005#) 例如 #05/12/2005# 的前兩個月和後兩個月之間: select * from table1 where [date] <=dateadd("",2,#05/12/2005#) and [date] >=dateadd("m",-2,#05/12/2005#)

4樓:匿名使用者

and 系統時間 between addtime and stoptime 欄位上不能加引號的,否則會認為是個字串另外where 列值這個沒有條件啊 where 列值=?? and

5樓:我tm不管

select *

from family

where `date`

between '2011 -05 -06'

and '2011 -05 -10'

order by `id`

limit 0 , 10

這樣查肯定有記錄

6樓:筆走出海坨

data between 1 and 2

sql語句中 between and

sql 語句中between and 使用求教

7樓:匿名使用者

作用:

between  and操作符在 where 子句中使用,作用是選取介於兩個值之間的資料範圍。

範圍:

操作符 between ... and 會選取介於兩個值之間的資料範圍。這些值可以是數值、文字或者日期。

語法:

select column_name(s) from table_name

where column_name between value1 and value2

注意事項:

不同的資料庫對 between...and 操作符的處理方式是有差異的。有些資料庫包含value1 和 value2  有些只包含value1 不包含value2,有些則兩則均不包括。

所以,請檢查你的資料庫是如何處理 between....and 操作符的!

舉例說明(以sql server 2008為列)

(1).建表並且生成資料

create table 銷售清單

(單據編號 varchar(10),

商品     varchar(10),

時間    datetime)

insert into 銷售清單

values ('00001','蘋果','2014-01-01'),

('00002','荔枝','2015-01-01'),

('00003','菊花','2016-01-01'),

('00004','玫瑰','2015-12-01')

select * from 銷售清單 where 時間 between '2015-01-01' and '2015-12-31'結果:

8樓:標標課堂

sql server資料庫中between、and的使用

9樓:春運虹

select * from 銷售清單 where 時間 between '起始日期' and '終止日期'

10樓:一直就很笨

select * from table where time between('2014-01-01') and ('2014-02-02')

access 使用的between and 和 date 方法

11樓:

你的問題是語法問題,而且名命不規則!

估計 currentdb 是用dao開啟access吧!

設計資料庫時如果用了資料庫中的關鍵字,查詢語句中就必須要用符號把這些關鍵字括起來,就算不是關鍵字用也不會有什麼影響!

private sub test2()

dim rs as recordset

dim sqlstr as string

dim strstartdate as string

dim strenddate as string

strstartdate = dateadd("d", -1000, date)

strenddate = date

sqlstr = "select count(*) as mcount from [enquiry] where [date] between #" & strstartdate & "# and #" & strenddate & "# "

set rs = currentdb.openrecordset(sqlstr, dbopendynaset, dbreadonly)

t0.value = rs("mcount").value

if not (rs is nothing) then

rs.close: set rs = nothing

end if

end sub

補充:如果資料庫是sql,查詢語句可改為:

sqlstr = "select count(*) as mcount from [enquiry] where [date] between cast('" & strstartdate & "' as datetime) and cast('" & strenddate & "' as datetime) "

12樓:匿名使用者

在我看來是你的select中的日期表示式出錯了。

我做了一個類似的模擬操作,我覺得你的select語句應該改成:

str =dateadd("d" ,-1000,date)en =date

"select count(*) as count from enquiry where enquiry.date between #" & str & "# and #" & en & "#"

整句就應該是:

str =dateadd("d" ,-1000,date)en =date

set rs=currentdb.openrecordset("select count(*) as count from enquiry where enquiry.date between #" & str & "# and #" & en &"#")

另外,你用date作欄位名,用count作欄位別名,這即使不錯也很危險,因為他們是access的保留詞,建議你最好改過來。

13樓:揭莞然

將 ' 改成 #

set rs = currentdb.openrecordset("select count(*) as count from enquiry where ((enquiry.date) between #" & str & "# and # " & en & "#)")

14樓:

我想試試這個問題

最好把庫和**給我幫你除錯

下個hi,hi我傳給我幫你。

sql 語句問題,sql語句的問題?

這兩個在效能上應該是沒什麼差別的,或者說差別不大,也沒人去考證這個事實。但是這兩個sql在安全上卻有很大的差別,舉個例子,比如說你寫的是第一個 select from stu where id 1 假如你傳入的值是1,簡單的連線可能是這樣 jsp?id 1。然後拼接字串就可以得到上面那個語句了。但是...

sql查詢語句的問題,sql查詢語句問題?

日期欄位存的是日期型別 2020 03 25 還是時間型別 2020 03 25 12 03 01 如果是後者,那查詢時需要帶上時間點 日期 2020 03 25 and 日期 2020 03 25 23 59 59 前面不帶時間的預設是2020 03 25 00 00 00,後面帶時間的包含了25...

Sql語句問題

1全部a代表message這個表,b代表 select sums count id id from huifu group by id 的查詢結果,這個查詢的是 mesage表中的所有列和另一個查詢結果的sums列,right join 是右聯接,就是右邊是完全的,左邊隨便。你的sql語句相當於 s...