sql 按照天環比 SQL知識 自查詢

2021-10-14 04:45:16 字數 1513 閱讀 9337

yq是也:sql高階教程:非等值自連線​zhuanlan.zhihu.com

1.用sql生成有序對非常簡單。像下面這樣通過交叉連線生成笛卡爾積,就可以得到有序對。

select p1.name as name_1, p2.name as name_2

from products p1, products p2;

2.為了去掉(蘋果,蘋果)這種由相同元素構成的對,需要像下面這樣加上乙個條件,然後再進行連線運算。

select p1.name as name_1, p2.name as name_2

from products p1, products p2

where p1.name <> p2.name;

#在以後多用』<>『,戒掉』=!『

3.進一步對(蘋果,橘子)和(橘子,蘋果)這樣只是調換了元素順序的對進行去重。

select p1.name as name_1, p2.name as name_2 

from products p1, products p2

where p1.name > p2.name;

#』>『此處利用首字母

sql自查詢 - 搜尋結果 - 知乎​www.zhihu.com

查詢表中至少連續出現三次的數字

l1.id = l2.id-1 #合併規則,按照id+1來合併

and l2.id = l3.id-1

and l1.num = l2.num #篩選規則

and l2.num = l3.num

每天的活躍使用者數和活躍30天留存使用者數

a.date,a.日活躍使用者數,b.活躍30天留存使用者數

from (

select date,count(*) 日活躍使用者數

from active

group by date) a

left join (

select a1.date,count(a1.user_id) 活躍30天留存使用者數

from active a1,active a2

where a1.user_id=a2.user_id and date(a1.date)+29group by a1.date) b

on a.date=b.date;

還是有問題,輸出的是null不是0

SQL 按照最新時間分組

表名 bp acctcurbalance 表說明 當日餘額表 欄位名型別 是否可空 描述索引 idbigintn主鍵 accountid bigint n賬戶id currencycode varchar 50 n幣種 balance decimal 22,2 n餘額 truebalancedate...

sql 累計佔比 sql統計佔比和統計數量

在工作中經常遇到統計佔比的需求,有時候還要把沒有值得統計為0,如何寫sql呢?下面寫乙個小例子,作為參考,方便以後查閱.資料準備 create table t group id number not null,name varchar2 100 alter table t group add pri...

sql 按照任意順序進行排序

建立一張表 create table stut id int,na varchar 20 插入4條資料。insert into stut values 1,aa insert into stut values 2,bb insert into stut values 3,df insert into...