Collections:
NTILE() - Dividing Window into N Tiles
How to divid result set window into N tiles and return the tile position using the NTILE() function?
✍: FYIcenter.com
NTILE(n) is a MySQL built-in window function that
divides result set window into n tiles and returns the tile position
of the current row.
For example:
SELECT help_topic_id AS tip, help_category_id AS cid, NTILE(5) OVER w, ROW_NUMBER() OVER W, COUNT(*) OVER W FROM mysql.help_topic WINDOW w AS (PARTITION BY help_category_id); -- +-----+-----+-----------------+---------------------+-----------------+ -- | tip | cid | NTILE(5) OVER w | ROW_NUMBER() OVER W | COUNT(*) OVER W | -- +-----+-----+-----------------+---------------------+-----------------+ -- | 0 | 1 | 1 | 1 | 2 | -- | 1 | 1 | 2 | 2 | 2 | -- | 2 | 2 | 1 | 1 | 35 | -- | 6 | 2 | 1 | 2 | 35 | -- | 7 | 2 | 1 | 3 | 35 | -- | 8 | 2 | 1 | 4 | 35 | -- | 9 | 2 | 1 | 5 | 35 | -- | 10 | 2 | 1 | 6 | 35 | -- | 11 | 2 | 1 | 7 | 35 | -- | 12 | 2 | 2 | 8 | 35 | -- | 13 | 2 | 2 | 9 | 35 | -- ... -- +-----+-----+-----------------+---------------------+-----------------+
Reference information of the NTILE() function:
NTILE(n): pos Divides result set window into n tiles and returns the tile position of the current row. Arguments, return value and availability: n: Required. The number of tiles to be divided into. pos: Return value. The position of the current tile. Available since MySQL 8.
⇒ PERCENT_RANK() - Rank Percentage of Sorted Values
⇐ NTH_VALUE() - N-th Value of Result Set Window
2024-09-12, 1365🔥, 0💬
Popular Posts:
Can Binary Strings Be Converted into NUMERIC or FLOAT Data Types in SQL Server Transact-SQL? Can bin...
Where to find answers to frequently asked questions I am new to Oracle database. Here is a list of f...
How to set database to be READ_ONLY in SQL Server? Databases in SQL Server have two update options: ...
How To Find Out What Privileges a User Currently Has in Oracle? Privileges granted to users are list...
How To List All User Names in a Database in SQL Server? If you want to see a list of all user names ...