SQL每日一題 20210318

2021-10-22 18:57:47 字數 1347 閱讀 4000

create

table t0318 (

id int

,redate date

,temp

int)

insert

into t0318 values(1

,'2020-1-1',10

);insert

into t0318 values(2

,'2020-1-2',18

);insert

into t0318 values(3

,'2020-1-3',15

);insert

into t0318 values(4

,'2020-1-4',20

);

官方答案:

-- 第一種

select id from t0318 w

where w.

temp

>

(select

temp

from t0318 where w.id=id+1)

-- 第二種

select

w2.id

from t0318 w1,t0318 w2

where datediff(

day,w1.redate,w2.redate)=1

and w1.

temp

temp

考點:datediff()自關聯檢索資料

注意:下面是我與官方的討論

我的答案

;

with cte as

(select row_number(

)over

(order

by redate)

no,id,redate,

temp

from t0318)

select c2.id from cte c1 join cte c2 on c1.

no=c2.no-

1and c1.

temp

temp

注意:因為這裡id並不一定聯絡,使用視窗函式讓其連續,然後巧妙使用no即表示相鄰

參考:sql每日一題(20210318)

SQL每日一題 20210311

有如下一張表t0311 希望得到如下結果 即對相同的no進行轉置 create table t0311 noint name nvarchar 20 age int insert into t0311 select1,張三 18 union allselect1,李四 17 union allsel...

每日一題 1

題目詳情 peter喜歡玩數字遊戲,但數獨這樣的遊戲對他來說太簡單了,於是他準備玩乙個難的遊戲。遊戲規則是在乙個n n的 裡填數,規則 對於每個輸入的n,從左上角開始,總是以對角線為起點,先橫著填,再豎著填。這裡給了一些樣例,請在樣例中找到規律並把這個n n的 列印出來吧。輸入描述 多組測試資料 資...

每日一題2018 3 21

leetcode 2 模擬十進位制運算考察單鏈表基本操作。題無難點,個人基礎需要提高。definition for singly linked list.struct listnode class solution while p while q if shi val s next null ret...