⑴ sql中如何選擇表中日期最大值
給你個思路:
WITHMessages(ID,ToEmpID,FromEmpID,SendDate,Detail)AS
(
SELECT1,'張三','李四','2014/06/05','a'UNIONALL
SELECT2,'王五','張三','2014/06/03','b'UNIONALL
SELECT3,'劉六','張三','2014/06/02','b'UNIONALL
SELECT4,'張三','李四','2014/05/05','a'UNIONALL
SELECT5,'王五','張三','2014/05/03','b'UNIONALL
SELECT6,'劉六','張三','2014/05/02','b'
)
SELECTID,ToEmpID,FromEmpID,SendDateFROMMessagesa
WHEREIDin
(
SELECTTOP1ID
FROMMessages
whereToEmpID=a.ToEmpIDANDFromEmpID=a.FromEmpID
ORDERBYSendDateDESC
)
⑵ SQL如何按條件選擇DateTime的格式
我的 欄位名是 a, 結果應該是滿足要求的
1> SELECT * FROM test_jiulang1989
2> go
a
-----------------------
2010-10-20 22:14:42.640
2010-10-10 10:10:10.000
(2 行受影響)
1>
2> SELECT
3> CASE
4> WHEN DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 0)
5> = DATEADD(DAY, DATEDIFF(DAY, 0, a), 0)
6> THEN CONVERT(NVARCHAR(100),a,8)
7> ELSE
8> CONVERT(NVARCHAR(100),a, 23)
9> END
10> FROM
11> test_jiulang1989
12> go
--------------------------------------------------------------------------------
--------------------
22:14:42
2010-10-10
(2 行受影響)
1>
⑶ sql select關於日期的選擇
select from store where date='2007-10-27 '
select from store where date='2007-2-5 '
select from store where date='2007-1-27 '
就這樣寫的,日期格式就得這樣,換了其它還不行,另外'2007-2-5 '和'2007-02-05 '效果一樣
變數就直接select from store where date=變數
⑷ sql 在日期中挑選出特定月份的所有日期
select * from 表 where 比賽時間 between '2014-03-01' and '2014-03-31 23:59:59'
這個方法要比第一個回答的快。你可以測試一下,當數據量在2000行以上的時候很明顯
⑸ SQL語句按日期選擇當天的記錄如何操作
如果當前是2007-4-8
打開查詢分析器
updata hua set songhua_date =想要改的日期 where 名字='admin'
⑹ sql 如何選取某時間段 的數據代碼
sql 如何選取某時間段 的數據代碼
1
select * from " tableName " where DATA_TIME >=<a href="https://www..com/s?wd=CONVERT&tn=44039180_cpr&fenlei=--bIi4WUvYETgN-" target="_blank" class="-highlight">CONVERT</a>(<a href="https://www..com/s?wd=VARCHAR&tn=44039180_cpr&fenlei=--bIi4WUvYETgN-" target="_blank" class="-highlight">VARCHAR</a>,startTime,120) and DATA_TIME <<a href="https://www..com/s?wd=CONVERT&tn=44039180_cpr&fenlei=--bIi4WUvYETgN-" target="_blank" class="-highlight">CONVERT</a>(<a href="https://www..com/s?wd=VARCHAR&tn=44039180_cpr&fenlei=--bIi4WUvYETgN-" target="_blank" class="-highlight">VARCHAR</a>,endTime,120)
⑺ 在sql資料庫中如何篩選以日期為條件的記錄
sql資料庫中如篩選以日期為條件的記錄,可以用有二種方法具體實現,如下:
第一種:直接用語句
date1與date2是字元串
SQL.Tet:='select * from table where 欄位 between '+Quotedstr(date1)+' and '+Quotedstr(date2);
date1與date2是日期
SQL.Tet:='select * from table where 欄位 between '+Quotedstr(DateTimeToStr(date1))+' and '+Quotedstr(DateTimeToStr(date2));
第二種:用參數形式:
SQL.Tet:='select * from table where 欄位 between :d1 and :d2';
Parameters.ParamByName('d1').Value:=date1;
Parameters.ParamByName('d2').Value:=date2;
⑻ sql如何按日期中的月份查詢
sql按日期中的月份查詢如下:
SQL Server
select * from [data] where DATEPART(m,[date])=2
Access
select * from [data] where DATEPART('m',[date])=2
說明:
DATEPART(datepart,date)
返回表示指定日期的指定部分的整數
datepart 要取得的日期部分
- m 表示月份,d表示日,yyyy表示年
date 日期表達式
舉例:
--以2013-12-10 12:56:55為例
--convert(nvarchar(10),CreateDate,120) => 2013-12-10
--DATEPART(month,CreateDate) => 12
--DATEPART(year,CreateDate) => 2013
--月
select datepart(MONTH,'2013-06-08')
select datepart(mm,'2013-06-08')
select datepart(m,'2013-06-08')
(8)sql選擇日期擴展閱讀:
相關函數
SQL Aggregate 函數
SQL Aggregate 函數計算從列中取得的值,返回一個單一的值。
有用的 Aggregate 函數:
AVG() - 返回平均值
COUNT() - 返回行數
FIRST() - 返回第一個記錄的值
LAST() - 返回最後一個記錄的值
MAX() - 返回最大值
MIN() - 返回最小值
SUM() - 返回總和
SQL Scalar 函數
SQL Scalar 函數基於輸入值,返回一個單一的值。
有用的 Scalar 函數:
UCASE() - 將某個欄位轉換為大寫
LCASE() - 將某個欄位轉換為小寫
MID() - 從某個文本欄位提取字元
LEN() - 返回某個文本欄位的長度
ROUND() - 對某個數值欄位進行指定小數位數的四捨五入
NOW() - 返回當前的系統日期和時間
⑼ sql 如何選擇最近的日期
呵呵,midasblesshj的方法其實第一種是好的,但是第二種要是把abs函數去掉了那就壞了,因為去掉了abs,無論你怎樣做,取到的永遠都是最小日期的值,當查詢日期比20090605大時,結果正確,但是比他小時,結果就是錯了的,因為min函數可以是負的,最小的負數則離目標結果很遠了。
正確的應該就是第一個語句,要去除重復加distinct:
select distincr * from 表 where abs(datediff(d,date,'20090605'))=(select min(abs(datediff(d,date,'20090605')))from 表)
但是又正如midasblesshj所說,有個問題,當查詢'20090605'時,離他最近的有可能有兩個值,比如'20090604'和'20090606'。
所以這就需要樓主做取捨了 如果兩個都要,則什麼都不加,只要一個,則利用top和order by :
select distincr top 1 * from 表 where abs(datediff(d,date,'20090605'))=(select min(abs(datediff(d,date,'20090605')))from 表) order by date
當然 是要大的還是小的那個,就使用asc和desc來取吧
⑽ sql 按日期匯總
參考 29、人的一生中有大大小小的等待,人漸漸忘記了自己等待的是什麼。