⑴ sql 怎樣查詢每段連續數中的最大值
假設你表中的data_time欄位是日期類型,如果是字元類型,需要對下列語句做修改
sql
server
select
convert(char(8),data_time,112)
日期,max(data_data)
from
table_name
group
by
convert(char(8),data_time,112)
order
by
1
oracle
select
trunc(data_time)
日期,max(data_data)
from
table_name
group
by
trunc(data_time)
order
by
1
;
按照你的要求的話是不是要保留每條記錄,然後每條記錄再顯示出當日的最大值?
如果是這樣,sql
server中需要原表和每日的最大值的嵌套表做關聯;oracle用分析函數,下面是oracle的語句
select
to_char(data_time,'yyyy-mm-dd
hh24:mi:ss')
時間,
data_data
"當前值",
max(data_data)
over(partition
by
trunc(data_time))"當日最大值"
from
table_name
order
by
1;
⑵ sql 多條數據各自的最大日期
以sCardNum分組,取出最大時間的記錄
select * from cards where srcvouchdate in (select MAX(srcvouchdate) from UserList group by sCardNum)
⑶ sql 取有數值最大的一個日期
說明:
PersonID: 標識唯一的人員。
select PersonID, max(日期) from TableName
where 數值 is not null
group by PersonID
⑷ sql查詢時間最大的語句
SELECT
*
FROM
表
WHERE
DATE = ( SELECT MAX( DATE ) FROM 表 )
⑸ SQL中怎麼查詢出時間最大的那條記錄啊句子該怎麼寫
select * from (
select *,row_number() over(order by date desc) as dateby from tablea
)a
where a.dateby=1
row_number()中,以date排序,然後取排序為1即最大時間記錄
⑹ sql svrver 如何查詢連續有數據最多的天數
select 數據,count(*) as 連續出現次數 from table as t where exists(select 1 from table as a where a.數據=t.數據 and (a.日期=t.日期+1 or a.日期=t.日期-1)) group by 數據
⑺ sql查詢兩段時間內的最大值
selectmax(值)fromtb1wheredatetimebetween'起始時間'and'結束時間'
--這個很容易,把這個時間條件設成多條件就行
select
casewhendatetimein('時間1','時間2')thenmax(值)end0as條件1最大值
casewhendatetime>='時間1'anddatetime<='時間2'thenmax(值)end0as條件2最大值
casewhendatetime='時間'thenmax(值)end0as條件3最大值
fromtb1
groupby欄位1,欄位2
--條件的表現形式有很多種,看最終的目的需求
⑻ sql中日期可以表示的最大值,和最小值是
如果類型是「datetime」 數據類型:
最大是9999年12 月31日
最小是1753年1月1日
如果類型是smalldatetime 數據類型
最大值是2079 年 6 月 6 日
最小值是1900 年 1 月 1 日
⑼ sql取日期最大的情況下 值最大的
有幾種方式可以選擇
(1)按照日期和d/c的倒敘排列,然後利用rownum取第一行,具體寫法要測試
(2)子查詢,先利用max(b)找到日期最大值,然後在等於日期最大值的情況下,找d/c的最大值。
(3)根據插入規律找日期,比如你是今天上午九點插入昨天的日期,那麼只要過了9點你就sysdate-1,截取到日期,然後再吵最大值就行了。沒過9點就sysdate-2,至於過沒過9點,如果你要寫過程的的話,價格判斷就行。