728x90

window.open()

window.open()은 팝업을 띄우는데 사용한다.

window.open(url, name, option);
window.open('팝업 주소', '팝업창 이름', '팝업창 설정');

 

팝업창 이름

- target="_blank" : 팝업을 새창에서 연다. target을 입력하지 않으면 default.

- target="_parent" : 부모창에서 팝업이 열린다.

- target="_self" : 현재 페이지에서 팝업이 열린다.

- target="_top" : 현재 페이지에서 최상의 페이지에서 팝업이 열린다.

 

팝업창 설정

width 가로크기
height  세로크기
top  위에서부터 위치
left  왼쪽에서부터 위치
menubar=no  메뉴바 없애기
toolbar=no 툴바 없애기
location=no 주소표시줄 없애기
status=no  상태표시줄 없애기
scrollbars=no  스크롤바 없애기
fullscreen  최대창크기로 열기 =>F11 눌린 크기지만, F11과는 다른 기능
resizable=no 창 크기 조절 금지

 

예제

See the Pen Untitled by Kim Jae Ik (@doitdoik) on CodePen.

 

728x90
728x90

slice()

slice()는 배열의 일부분을 선택하여 새로운 배열을 만든다.

arr.slice([begin[, end]])

begin

잘라낼 배열의 시작 index

 

end

잘라낼 배열의 종료 index

end index의 값은 잘라낼 배열에 포함되지 않는다.

end index가 생략되면, begin index부터 배열의 끝까지를 잘라낸다.

begin index나 end index가 음수면 배열 끝에서부터의 길이를 나타낸다.

 

예제

See the Pen Untitled by Kim Jae Ik (@doitdoik) on CodePen.

 

728x90
728x90

forEach()

Array 요소를 제공된 함수로 한 번 실행.

값을 반환하지 않는다.(return값이 없다.)

기존 배열은 변경 가능.

// 함수를 선언해서 사용
array.forEach(function(item){
	console.log(item);
});

// es6 화살표 함수
array.forEach((item) => {
	console.log(item);
});

 

See the Pen Untitled by Kim Jae Ik (@doitdoik) on CodePen.

 

map()

모든 Array 요소가 제공된 함수로 호출될 때 새로운 array를 생성

기존의 배열을 가공하여 새로운 배열을 생성할 때 사용

기존 배열 값은 바뀌지 않고 유지

// 함수를 선언해서 사용
array.map(function(item){
	return item;
});

// es6 화살표 함수
array.map((item) => {
	return item;
});

 

See the Pen Untitled by Kim Jae Ik (@doitdoik) on CodePen.

 

728x90
728x90

DATE_FORMAT()

날짜를 지정한 형식으로 출력

-- 날짜를 형식으로 변환
DATE_FORMAT(날짜 , 형식)

형식

형식 설명
%M 월(Janeary, December)
%w 요일(Sunday, Monday)
%D 월(1st, 2dn)
%Y 연도(2021, 2022)
%y 연도(21, 22) 
%X 연도(2021, 2022) %V와 같이 쓰임.
%x 연도(2021, 2022) %v와 같이 쓰임.
%a 요일(Sun, Tue)
%d 일(00, 01, 02)  
%e 일(0, 1, 2) 
%c 월(1, 2, 3)  
%b 월(Jan, Dec) 
%j 몇번째 일(90, 365) 
%H 시(00, 01, 13, 24) 
%h 시(01, 02, 12)
%I(대문자 아이) 시(01, 02, 12)
%l(소문자 엘) 시(1, 2, 12) 
%i 분(00, 01, 30) 
%r "hh:mm:ss AM|PM" 
%T "hh:mm:ss" 
%S
%s
%p AM, PM
%w 요일(0, 1, 2) 0:일요일
%U 주(시작:일요일) 
%u 주(시작:월요일) 
%V 주(시작:일요일) 
%v 주(시작:월요일) 

예제

-- 2022-01-15
DATE_FORMAT(NOW(),'%Y-%m-%d')
728x90
728x90

DATEDIFF

DATEDIFF는 문자 그대로 두 날짜 간의 차이를 DATE(일)로 가지고 온다.

-- 날짜1 - 날짜2
DATEDIFF(날짜1, 날짜2)

계산은 날짜1 - 날짜2로 진행되므로 순서에 유의.

 

TIMESTAMPDIFF

TIMESTAMPDIFF는 모든 시간 관련 차이를 계산.

-- 날짜2 - 날짜1
TIMESTAMPDIFF(단위, 날짜1, 날짜2);

계산은 DATEDIFF와 반대로, 날짜2 - 날짜1로 진행.

 

TIMESTAMPDIFF 단위

 

  • SECOND - 초
  • MINUTE - 분
  • HOUR - 시
  • DAY - 일
  • WEEK - 주
  • MONTH - 월
  • QUARTER - 분기
  • YEAR - 연

 

 

728x90
728x90

CASE

CASE문은 프로그래밍 언어 스위치(switch)문과 비슷하다.

단 다수의 조건에 하나의 반환 값은 불가하다.

WHEN, THEN과 함께 사용해야 한다.

WHEN, THEN의 갯수는 상관없다.

 

-- 조건에 따른 반환값
CASE
    WHEN '조건1'
    THEN '반환값1'
    WHEN '조건2'
    THEN '반환값2'
    ELSE '조건1, 조건2둘다 아닌 경우'
END

-- 비교문에 따른 반환값
CASE
    WHEN '비교문1'
    THEN '반환값1'
    WHEN '비교문2'
    THEN '반환값2'
    ELSE '비교문1, 비교문2 둘다 아닌 경우'
END

 

예제

-- 조건
CASE
    WHEN 'A' 
    THEN 'A입니다.'
    WHEN 'B'
    THEN 'B입니다.'
    ELSE 'A,B둘 다 아닙니다.'
END

-- 비교문
CASE
    WHEN 컬럼 LIKE '%A%' 
    THEN 'A를 포함 합니다'
    WHEN 컬럼 LIKE '%B%'
    THEN 'B를 포함 합니다.'
    ELSE 'A,B둘 다 포함하지 않습니다.'
END

 

728x90
728x90

IN

IN은 특정 값이 들어있을 경우에만 조회하려는 경우 사용.

값은 콤마( , )로 구분하여 괄호 내에 묶어 사용.

검색어 들은 OR 조건으로 검색 된다.

 

-- 검색어1 또는 검색어2인 값만 출력
WHERE [컬럼명] IN ('검색어1', '검색어2');

-- SELECT문의 조건만 출력
WHERE [컬럼명] IN (SELECT문);

 

NOT IN

NOT IN은 IN과 반대로 특정 값이 들어있지 않을 경우에만 조회하려는 경우 사용.

 

-- 검색어1 또는 검색어2가 아닌 값만 출력
WHERE [컬럼명] NOT IN ('검색어1', '검색어2');

-- SELECT문의 조건이 아닌 값만 출력
WHERE [컬럼명] NOT IN (SELECT문);
728x90
728x90

ORDER BY

데이터 조회할 때 ORDER BY를 사용하여 지정한 컬럼 기준으로 정렬한다.

오름차순(ASC), 내림차순(DESC) 두 가지 정렬 방법.

기본 정렬은 오름차순이다.

 

-- 오름차순 정렬
SELECT * FROM [테이블명] ORDER BY [컬럼명] ASC; -- ASC 생략가능

-- 내림차순 정렬
SELECT * FROM [테이블명] ORDER BY [컬럼명] DESC;

-- 다중 정렬
SELECT * FROM [테이블명] ORDER BY [컬럼명1] DESC, [컬럼명2] ASC;

 

컬럼 번호로 정렬이 가능하지만 사용하지 말자.

728x90

'DataBase' 카테고리의 다른 글

[MySQL] CASE 사용법  (0) 2022.01.13
[MySQL] IN, NOT IN 사용법  (0) 2022.01.12
[MySQL] GROUP BY, HAVING 사용법  (0) 2022.01.10
[MySQL] Like 특정문자 포함 검색  (0) 2022.01.09
[MySQL] Limit 사용법  (0) 2022.01.08

+ Recent posts