中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

電話(huà)銷(xiāo)售做網(wǎng)站推銷(xiāo)seo網(wǎng)站優(yōu)化軟件

電話(huà)銷(xiāo)售做網(wǎng)站推銷(xiāo),seo網(wǎng)站優(yōu)化軟件,定制小程序網(wǎng)站開(kāi)發(fā)公司,網(wǎng)站檢索功能怎么做呢目錄 1 題目2 建表語(yǔ)句3 題解 1 題目 有用戶(hù)賬戶(hù)表,包含年份,用戶(hù)id和值,請(qǐng)按照年份分組,取出值前兩小和前兩大對(duì)應(yīng)的用戶(hù)id,需要保持值最小和最大的用戶(hù)id排首位。 樣例數(shù)據(jù) ------------------------- | year | user_id | v…

目錄

  • 1 題目
  • 2 建表語(yǔ)句
  • 3 題解

1 題目


有用戶(hù)賬戶(hù)表,包含年份,用戶(hù)id和值,請(qǐng)按照年份分組,取出值前兩小和前兩大對(duì)應(yīng)的用戶(hù)id,需要保持值最小和最大的用戶(hù)id排首位。

樣例數(shù)據(jù)

+-------+----------+--------+
| year  | user_id  | value  |
+-------+----------+--------+
| 2022  | A        | 30     |
| 2022  | B        | 10     |
| 2022  | C        | 20     |
| 2023  | A        | 40     |
| 2023  | B        | 50     |
| 2023  | C        | 20     |
| 2023  | D        | 30     |
+-------+----------+--------+

期望結(jié)果

+-------+-----------------+-----------------+
| year  | max2_user_list  | min2_user_list  |
+-------+-----------------+-----------------+
| 2022  | A,C             | B,C             |
| 2023  | B,A             | C,D             |
+-------+-----------------+-----------------+

2 建表語(yǔ)句


--建表語(yǔ)句
create table if not exists t_amount
(year    string,user_id string,value   bigint
)ROW FORMAT DELIMITEDFIELDS TERMINATED BY ','STORED AS orc;--插入數(shù)據(jù)insert into t_amount(year, user_id, value)
values ('2022', 'A', 30),('2022', 'B', 10),('2022', 'C', 20),('2023', 'A', 40),('2023', 'B', 50),('2023', 'C', 20),('2023', 'D', 30)

3 題解


(1)row_number函數(shù)根據(jù)年份分組,value正排和倒排得到兩個(gè)序列

select user_id, year, value, row_number() over (partition by year order by value desc) as desc_rn, row_number() over (partition by year order by value)      as rn
from t_amount

執(zhí)行結(jié)果

+----------+-------+--------+----------+-----+
| user_id  | year  | value  | desc_rn  | rn  |
+----------+-------+--------+----------+-----+
| B        | 2022  | 10     | 3        | 1   |
| C        | 2022  | 20     | 2        | 2   |
| A        | 2022  | 30     | 1        | 3   |
| C        | 2023  | 20     | 4        | 1   |
| D        | 2023  | 30     | 3        | 2   |
| A        | 2023  | 40     | 2        | 3   |
| B        | 2023  | 50     | 1        | 4   |
+----------+-------+--------+----------+-----+

(2)根據(jù)年份分組,取出value最大user_id,第二大user_id,最小user_id,第二小user_id

根據(jù)年份分組,取出每年最大、第二大,最小、第二小用戶(hù)ID。使用 if 對(duì)desc_rn,rn進(jìn)行判斷,對(duì)符合條件的數(shù)據(jù)取出 user_id,其他去null,然后使用聚合函數(shù)取出結(jié)果。

select year,max(if(desc_rn = 1, user_id, null)) as max1_user_id,max(if(desc_rn = 2, user_id, null)) as max2_user_id,max(if(rn = 1, user_id, null))      as min1_user_id,max(if(rn = 2, user_id, null))      as min2_user_id
from (select user_id, year, value, row_number() over (partition by year order by value desc) as desc_rn, row_number() over (partition by year order by value)      as rnfrom t_amount) t1
group by year

執(zhí)行結(jié)果

+-------+---------------+---------------+---------------+---------------+
| year  | max1_user_id  | max2_user_id  | min1_user_id  | min2_user_id  |
+-------+---------------+---------------+---------------+---------------+
| 2022  | A             | C             | B             | C             |
| 2023  | B             | A             | C             | D             |
+-------+---------------+---------------+---------------+---------------+

(3)按照順序拼接,得到最終結(jié)果

按照題目要求,進(jìn)行字符拼接

  • 拼接max1_user_id、max2_user_id為max2_list;
  • 拼接min1_user_id、min2_user_id為min2_list;
select year,concat(max(if(desc_rn = 1, user_id, null)), ',',max(if(desc_rn = 2, user_id, null))) as max2_user_list,concat(max(if(rn = 1, user_id, null)), ',',max(if(rn = 2, user_id, null)))      as min2_user_list
from (select user_id, year, value, row_number() over (partition by year order by value desc) as desc_rn, row_number() over (partition by year order by value)      as rnfrom t_amount) t1
group by year

執(zhí)行結(jié)果

+-------+-----------------+-----------------+
| year  | max2_user_list  | min2_user_list  |
+-------+-----------------+-----------------+
| 2022  | A,C             | B,C             |
| 2023  | B,A             | C,D             |
+-------+-----------------+-----------------+
http://www.risenshineclean.com/news/1708.html

相關(guān)文章:

  • wordpress美化文章標(biāo)題seo排名點(diǎn)擊軟件
  • win本地網(wǎng)站建設(shè)網(wǎng)絡(luò)優(yōu)化軟件
  • 做網(wǎng)站要收訂金嗎百度seo快速見(jiàn)效方法
  • 成都科技網(wǎng)站建設(shè)服務(wù)熱線(xiàn)seo實(shí)戰(zhàn)培訓(xùn)班
  • 網(wǎng)站維護(hù) 代碼開(kāi)封網(wǎng)站設(shè)計(jì)
  • 招聘網(wǎng)站開(kāi)發(fā)不受限制的搜索瀏覽器
  • wordpress手機(jī)建站教程軍事新聞最新消息
  • 常州建設(shè)工程質(zhì)量監(jiān)督網(wǎng)站鄭州seo代理外包
  • 如何對(duì)網(wǎng)站做優(yōu)化網(wǎng)絡(luò)營(yíng)銷(xiāo)的基本內(nèi)容有哪些
  • 做電影網(wǎng)站犯法網(wǎng)絡(luò)營(yíng)銷(xiāo)公司全網(wǎng)推廣公司
  • 開(kāi)封做網(wǎng)站百度手機(jī)導(dǎo)航官方新版
  • 第一家中文商務(wù)網(wǎng)站明年2024年有疫情嗎
  • 湖南省住房城鄉(xiāng)建設(shè)廳網(wǎng)站磁力搜索
  • 做網(wǎng)站主要欄目?jī)?nèi)競(jìng)價(jià)托管信息
  • 網(wǎng)站后臺(tái)如何做做搜索引擎優(yōu)化的企業(yè)
  • 門(mén)戶(hù)網(wǎng)站開(kāi)發(fā)報(bào)價(jià)單企業(yè)的網(wǎng)絡(luò)推廣
  • 文山州住房建設(shè)網(wǎng)站企業(yè)網(wǎng)絡(luò)推廣計(jì)劃
  • 微信小程序模版廣州seo網(wǎng)站推廣公司
  • 南通高端網(wǎng)站建設(shè)公司培訓(xùn)網(wǎng)頁(yè)
  • 承德做網(wǎng)站優(yōu)化搜狗網(wǎng)址大全
  • 國(guó)內(nèi)產(chǎn)品推廣網(wǎng)站廣州市疫情最新情況
  • 編程和做網(wǎng)站有關(guān)系嗎招商外包
  • 微信api文檔徐州seo代理計(jì)費(fèi)
  • 泉州市住房與城鄉(xiāng)建設(shè)局網(wǎng)站seo外鏈?zhǔn)鞘裁匆馑?/a>
  • 手機(jī)網(wǎng)站 pc網(wǎng)站模板百度近日收錄查詢(xún)
  • 深圳疫情防控最新通知seo網(wǎng)站關(guān)鍵詞優(yōu)化
  • 怎么判斷網(wǎng)站建設(shè)年齡新媒體運(yùn)營(yíng)主要做什么
  • 網(wǎng)站寶 西部數(shù)碼網(wǎng)站管理助手廣告最多的網(wǎng)站
  • 淘寶客優(yōu)惠券網(wǎng)站建設(shè)加盟官網(wǎng)怎么做百度推廣運(yùn)營(yíng)
  • 網(wǎng)站模板可視化編輯百度霸屏培訓(xùn)