我有四張表a、b、c、d,
--------------------------------
a | b | c | d
a b | a c | a d | d e
1 1 | 1 1 | 1 a | a 1
2 2 | 1 3 | 2 b | b 2
3 4 | 1 4 | 3 c | c 3
4 6 | 2 1 | 4 d | d 4
--------------------------------
現在要用一條sql語句將a表所有的列,b表對與a表a欄位
相關聯的列求count,通過c表,將d表與a表關聯起來,得到
結果
1 1 3 1
2 2 1 2
3 4 0 3
4 6 0 4
mysql語句解決:
select
a.a,a.b,ifnull(c,0)
asc,d.a
from
(select1as
a,2asb
union
allselect2as
a,2asb
union
allselect3as
a,4asb
union
allselect4as
a,6asb)
asa
left
outer
join
(select
a,count
(a)
asc
from
(select1as
a,3asc
union
allselect1as
a,3asc
union
allselect1as
a,3asc
union
allselect2as
a,3asc ) b
group
bya) asb
ona.a
=b.a
join
(select1as
a,'a'
asd
union
allselect2as
a,'b'
asd
union
allselect3as
a,'c'
asd
union
allselect4as
a,'d'
asd )
asc
ona.a
=c.a
join
(select1as
a,'a'
asd
union
allselect2as
a,'b'
asd
union
allselect3as
a,'c'
asd
union
allselect4as
a,'d'
asd ) asd
ond.d
=c.d
mysql 區間分組統計
select elt interval c.money,0,1000,2000,3000,4000,5000 less 1000 1000to2000 2000to3000 3000to4000 4000to5000 as level,count c.id as cnt from select su...
Mysql橫向分組統計
有這麼一張表trade,記錄著毛巾和枕頭的交易資訊,表結構如圖a a 目前的資料如圖b b 現在要查詢出每天每個商品交易的總價,如下圖所示 c 那麼該如何查詢呢?方法不唯一,這裡先列舉了一種方法 select date format created time,y m d as 日期 sum if p...
c 問題 B 分組統計(用set解決)
先輸入一組數,然後輸入其分組,按照分組統計出現次數並輸出,參見樣例。輸入第一行表示樣例數m,對於每個樣例,第一行為數的個數n,接下來兩行分別有n個數,第一行有n個數,第二行的n個數分別對應上一行每個數的分組,n不超過100。輸出m行,格式參見樣例,按從小到大排。173 2388 2312 3213 ...