
4/14 시험 안내
게시판 만들기 작업 내용 중
작업 1~ 9 까지 + 파일구성(적절한 패키지와 파일)
메인메서드가 모든 기능을 가지고 있는 상태로
Util, Article 에서 파일들이 각 패키지에 맞게 옮겨져 있는 상태로
접근제어자도 신경써주기
요구사항에서 제시되지 않은 세부 작업은 프로그램을 구현
하기 위한 범위에서 자율적으로 작업합니다 라는 문구가 있을텐데 (시험에서)
-> 시험에서 조건을 말하지 않아도 알아서 본인이 할 수 있어야 한다는 뜻
SQL 기초 문법 응용 & 함수
Alias(AS) - 별명을 짓는 기능이 있음
SELECT id AS `게시글번호`
, regDATE
, title
FROM article
-> 컬럼명을 id에서 별명(게시글 번호)으로 바꿔줌
SELECT 1 AS `금메달`
, 2 AS `금메달`
, 3 AS `금메달`처럼 사용할수있음
알아두면 좋은 tips_)
SELECT *
FROM article
WHERE id IN(2, 4, 6);
-> id가 ( 2, 4, 6 )인 애들 포함해서 가져와
SELECT *
FROM article
WHERE id NOT IN(2, 4, 6);
-> id가 ( 2, 4, 6 )인 빼서 가져와
ROUND() 반올림 소수점 다음애들 반올림 해줌
SELECT ROUND(1.2345); -> 1
CEIL() 소수점 올림
SELECT CEIL(0.1); -> 1
FLOOR() 소수점 버림
SELECT FLOOR(25.55); -> 25
CONCAT() 문자와 문자를 이어붙임
SELECT CONCAT(title, 'qweqwe','_asdasd')
FROM article;
--> qweqwe_asdasd로 출력되어 나옴
SUBSTR() 문자열을 원하는 부분 잘라내는 기능
자바의 Substring과 똑같음
SELECT SUBSTR ('abcdefg' 1, 4) ;
--> abcd....
날짜 관련
YEAR(NOW()) ... > 현재 년월 시간에서 연도만 출력
now( ) --> 현재 년월 시간 출력
SELECT SUBSTR(NOW(), 1, 10); 년월일만 구할 때(첫번째부터 열번째 문자열만 잘라서 출력)
SELECT DATEDIFF (NOW(),'2024-10-29'); .. 169일...
집계함수
종류) sum , avg, max, min, count ...
distinct(위의 함수와 세트메뉴)
sum(합계)
avg(평균)
max(최댓값)
min(최솟값)
count(데이터 개수 카운트)
distinct(중복 제거)
group by
같은 데이터를 그룹으로 묶는것
사용시 정확한 쿼리명과 정확한 목적을 가져야 함
위의 원칙을 지킬 때 select절에 명시된 순서와
group by절에 명시하는 순서도 같아야함
ex) select nickname
id
, count()
, sum()
from article
group by nickname;
JOIN