클리엘
CLIEL LAB
클리엘
전체 방문자
117,082
오늘
313
어제
116
  • 분류 전체보기 (396)
    • Mobile (47)
      • Kotlin (47)
    • Web (84)
      • NestJS (9)
      • HTML5 & CSS3 (38)
      • Javascript (20)
      • TypeScript (6)
      • JQuery (11)
    • .NET (187)
      • C# (24)
      • ASP.NET Core (31)
      • Windows API for .NET (128)
    • Server (50)
      • SQL Server (8)
      • MariaDB (18)
      • Windows Server (5)
      • node.js (19)
    • System (12)
      • 작업LOG (12)
    • Review (11)
    • ETC (5)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • 블로그 정리

인기 글

  • [C#] Thread(스레드)와 Task(태⋯
    2021.10.24
    [C#] Thread(스레드)와 Task(태⋯
  • [C#] TCP/IP 통신
    2021.10.28
    [C#] TCP/IP 통신
  • [ASP.NET Core] IIS 배포 (게시)
    2021.12.15
    [ASP.NET Core] IIS 배포 (게시)
  • [MSSQL] MS SQL Server 다운로⋯
    2022.02.23
    [MSSQL] MS SQL Server 다운로⋯
  • [C#] 인터페이스와 추상클래스
    2021.10.07
    [C#] 인터페이스와 추상클래스

태그

  • class
  • TypeScript
  • NestJS
  • CSS3
  • android studio
  • Cookie
  • 변수
  • apache nifi
  • c#
  • node.js
  • android
  • jQuery
  • asp.net core
  • asp.net core web api
  • Windows API
  • HTML5
  • Kotlin
  • CentOS
  • MariaDB
  • JavaScript

최근 댓글

  • 흠... CACLS는 더이상 사용하지⋯
    클리엘
  • 안녕하세요! 아래 명령 하고부⋯
    방문자
  • 죄송합니다. 관련글을 작성한지⋯
    클리엘
  • 네 맞습니다. 본문에서는 표기⋯
    클리엘
  • 6000 ms 는 6초아닌가요?
    react

최근 글

  • [TypeScript] Visual Studio에⋯
    2022.05.06
    [TypeScript] Visual Studio에⋯
  • [C#] 함수(메서드)의 실행과 디⋯
    2022.05.06
    [C#] 함수(메서드)의 실행과 디⋯
  • [C#] 흐름제어, 형변환, 예외처리
    2022.04.27
    [C#] 흐름제어, 형변환, 예외처리
  • [C#] C# 개요
    2022.04.20
    [C#] C# 개요
  • C#과 .NET6 시작하기
    2022.04.13
    C#과 .NET6 시작하기

티스토리

hELLO · Designed By 정상우.
클리엘

CLIEL LAB

Server/MariaDB

[MariaDB] 순위 함수

2021. 7. 23. 14:06
728x90

1. row_number()

 

row별로 순차적으로 번호를 부여합니다. 아래 예제는 tb_purchasebill 테이블에서 BillNo 순서대로 번호를 부여하여 표시하도록 합니다.

select row_number () over(order by BillNo asc) as number, BusinessName 
from tb_purchasebill tp;

전체적인 순서가 아닌 그룹별로 순서를 표시하고자 한다면 partition을 사용해야 합니다. 따라서 다음 쿼리는 BusinessName별로 각각 순번을 부여하게 됩니다.

select row_number () over(partition by tp.BusinessName order by tp.BillNo asc) as number, tp.BusinessName 
from tb_purchasebill tp;

2. dense_rank()

 

등수를 부여합니다.

select dense_rank () over(order by SupplyPrice desc) as '매입순위', tp.BusinessName
from tb_purchasebill tp ;

위 예제는 SupplyPrice값이 많은 순서대로 등수를 부여해 표시하도록 합니다.

 

3. rank()

 

dense_rank()는 같은 순위가 나오면 다음 순위를 순서대로 부여하지만 rank()는 같은 순위가 나오면 나온 수만큼 넘긴 후 순위를 표시합니다.

select rank () over(order by SupplyPrice desc) as '매입순위', tp.BusinessName
from tb_purchasebill tp ;

4. ntile()

 

전체적인 순위를 제한합니다. 따라서 다음 예제는 전체 순위를 1과 2로면 표시하게 됩니다.

select ntile(2) over(order by SupplyPrice desc) as '매입순위', tp.BusinessName
from tb_purchasebill tp ;
728x90
저작자표시비영리변경금지

'Server > MariaDB' 카테고리의 다른 글

[MariaDB] 분석 함수  (0) 2021.07.23
[MariaDB] 순위 함수  (0) 2021.07.23
[MariaDB] 시스템 함수  (0) 2021.07.23
[MariaDB] 날짜/시간 함수  (0) 2021.07.23
[MariaDB] 수학 함수  (0) 2021.07.22
[MariaDB] 문자열 함수  (0) 2021.07.22
    'Server/MariaDB' 카테고리의 다른 글
    • [MariaDB] 분석 함수
    • [MariaDB] 시스템 함수
    • [MariaDB] 날짜/시간 함수
    • [MariaDB] 수학 함수
    MariaDB, 순위함수
    클리엘
    클리엘
    누구냐 넌?
    댓글쓰기
    다음 글
    [MariaDB] 분석 함수
    이전 글
    [MariaDB] 시스템 함수
    • 이전
    • 1
    • ···
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • ···
    • 396
    • 다음

    티스토리툴바