Mysql中NTILE()函數(shù)的具體使用
窗口函數(shù)的基本語法
<窗口函數(shù)> OVER ([PARTITION BY <用于分組的列>] ORDER BY <用于排序的列>)
※ []中的內容可以省略
注意:Mysql從8.0版本才開始支持窗口函數(shù)
數(shù)據(jù)導入
DROP TABLE IF EXISTS order_content;
CREATE TABLE order_content(
order_id VARCHAR(8),
user_id VARCHAR(8),
order_price INT,
order_date DATE
)
ENGINE = InnoDB
DEFAULT CHARSET = utf8;
INSERT INTO
order_content (order_id,user_id,order_price,order_date)
VALUE ('o001','u001',800,'2021-06-18')
,('o002','u001',800,'2021-06-19')
,('o003','u001',1000,'2021-06-22')
,('o004','u001',1200,'2021-06-24')
,('o005','u002',400,'2021-06-25')
,('o006','u002',1500,'2021-06-26')
,('o007','u002',2100,'2021-06-28')
,('o008','u003',900,'2021-07-01')
,('o009','u003',700,'2021-07-03')
,('o010','u003',1700,'2021-07-04');order_content表

NTILE()函數(shù)
NTILE()函數(shù)用于將分區(qū)中的有序數(shù)據(jù)分為n個等級,記錄等級數(shù)
SELECT *,
NTILE(3) OVER (PARTITION BY user_id ORDER BY order_price)AS _ntile
FROM order_content;結果展示:

NTILE()函數(shù)可以按照不同user_id字段的值將每個PARTITION分區(qū)的數(shù)據(jù)從小到大分為3個等級
到此這篇關于Mysql中NTILE()函數(shù)的具體使用的文章就介紹到這了,更多相關Mysql NTILE()函數(shù)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
mysql5.7.14 解壓版安裝配置方法圖文教程(win10)
這篇文章主要為大家詳細介紹了win10下mysql5.7.14 winx64安裝配置方法圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-12-12
windows10系統(tǒng)安裝mysql-8.0.13(zip安裝) 的教程詳解
這篇文章主要介紹了windows10安裝mysql-8.0.13(zip安裝) 的教程,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2018-11-11
MySQL登錄報錯ERROR?1045?(28000)徹底解決辦法
這篇文章主要介紹了解決mysql登錄報錯:ERROR?1045(28000):Access?denied?for?user?‘root‘@‘localhost‘?(using?password:?Yes)的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2025-11-11

