일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- OSS
- Spring
- 크롤링 개발
- Web
- VSCode
- Database
- KAKAO
- cloud
- ICT멘토링
- LINUX MASTER
- suricata
- Machine Learning
- ChatGPT
- Resnet
- GoogleDrive
- Rocky Linux
- Spring Boot
- Powershell
- 인터넷의이해
- git
- API
- rnn
- colab
- Python
- Github
- 코딩도장
- C언어
- Docker
- 국가과제
- 고등학생 대상
- Today
- Total
코딩두의 포트폴리오
6. MySQL 데이터베이스 자료의 정렬 본문
ORDER BY
- MySQL에서 특정 칼럼을 기준으로 정렬 하고자 할 때 사용하는 옵션
- 특정 칼럼을 기준으로 내림차순, 오름차순 정렬 가능
number를 기준으로 오름차순 정렬
오름차순으로 정렬하기
<명령 구문>
SELECT * FROM 테이블명 ORDER BY 칼럼명;
SELECT * FROM 테이블명 ORDER BY 칼럼명 ASC;
내림차순으로 정렬하기
<명령 구문>
SELECT * FROM 테이블명 ORDER BY 칼럼명 DESC;
칼럼 기준 정렬 적용 방법
칼럼 데이터 중 값이 중복되는 경우 -> 특정 칼럼 값이 중복되는 경우 다른 칼럼을 기준으로 재정렬 가능
ex) amount 칼럼값이 각각 10으로 동일한 경우 -> number 칼럼을 기준으로 내림차순 or 오름차순으로 정렬 가능
칼럼 간 합계 구하기
국어 점수(Korean)와 영어 점수(English)에 대하여 1월, 2월, 3월 자료가 다음과 같을 경우
➔ 매월 국어 점수와 영어 점수 합계를 구할 수 있음
SELECT 기준칼럼명, 칼럼1 + 칼럼2 +… FROM 테이블명;
- 기준 칼럼명은 출력 기준이 되는 칼럼
- 칼럼 간 합계는 2개 이상 가능
Aliasing(별칭)을 사용한 칼럼 간 합계 구하기
SELECT 기준칼럼명, 칼럼1 + 칼럼2+…
AS 별칭칼럼 FROM 테이블명 ORDER BY 별칭칼럼;
- 기준 칼럼명은 출력 기준이 되는 칼럼
- 칼럼 간 합계는 2개 이상 가능
AS - Aliasing을 의미 / AS 뒤에 임시 칼럼명을 설정(별칭 칼럼)
- ORDER BY 별칭 칼럼 뒤에는 ASC 또는 DESC 옵션 가능
LIMIT 구문
- 출력되는 레코드의 개수를 제한하는 구문
(첫 번째 레코드를 기준으로 레코드 개수 제한 / 특정 레코드를 기준으로 개수를 제한)
- MySQL에서만 사용됨
- 다른 RDBMS에서는 사용 불가(SQL의 표준이 X)
(ex 1) LIMIT 사용 경우
(ex 2) 4번째 레코드부터 2개의 레코드만 출력하는 경우
RAND() 함수
- 레코드의 순서를 무작위 순으로 정렬하는 구문
- 반복적으로 명령을 실행할 때마다 무작위로 정렬
자료 정렬 필요 칼럼 선정
Web 테이블에서 제목을 클릭할 경우 정렬이 되도록 동적 구성함
ex) number, amount, date를 선정함
- number 클릭 시 number 기준 오름차순 정렬
- amount 클릭 시 내림차순 정렬
- date 클릭 시 내림차순 정렬
조건별 Web 정렬 원리 - 조건의 설계
1) 조건 1-> 클라이언트가 amount 기준 정렬을 하고자 할 경우
2) 조건 2 -> 클라이언트가 date 기준 정렬을 하고자 할 경우
1) 조건 3 -> 조건 1, 조건 2에 해당하지 않는 조건일 경우
조건에 따른 PHP 문법 -> if 문법 사용
if(조건1) { 실행 }
elseif(조건2) { 실행 }
else { 실행 }
조건의 구체화
- 조건의 기준을 판별하기 위해 view라는 변수명을 작명하여 생성
- list.php 파일을 Web에서 로딩할 때 변수 view에 대입된 값으로 조건을 판정
변수 값의 전달
1) 칼럼 제목 클릭 시 변수값 전달
▪ number 클릭 시 $view 값 null 전달
▪ amount 클릭 시 $view 값 1 전달
▪ data 클릭 시 $view 값 2 전달
2) 변수값 전달 방식 - (경로/Web페이지?변수=값) 링크 클릭 시 전달
▪ http : //도메인/list.php
▪ http : //도메인/list.php?view=1
▪ http : //도메인/list.php?view=2
전체 자료 출력 페이지 코드 분석
- view의 값이 1일 경우 -> amount를 기준으로 내림차순 정렬
- view의 값이 2일 경우 -> date를 기준으로 내림차순 정렬
- view의 값이 null일 경우 -> 기본 정렬(number 칼럼 기준 오름차순)
if 조건문 대체 문법
- 조건식이 많을 경우 SWITCH 문법 사용(PHP 문법)
'STEP 특화교육 > MySQL 데이터베이스 기초와 Web 활용' 카테고리의 다른 글
8. MySQL 자료 수정과 삭제 Web 구현 (0) | 2025.05.22 |
---|---|
7. MySQL 데이터베이스 구조 및 자료 수정과 삭제 (0) | 2025.05.21 |
5. MySQL 자료 입력 Web 연동 (1) | 2025.05.18 |
4. 데이터베이스 자료 입력과 검색 (0) | 2025.05.18 |
3. MySQL 데이터베이스 구조와 생성 (1) | 2025.05.18 |