Node JS

PK? %? limit? Data type

EmilyP 2021. 4. 22. 10:38

PK란?

Primary key

테이블 당 하나만 정의 가능하며, 유일하게 식별할 수 있는 컬럼. 고유 인덱스 생성됨.

 

 

%?

like 문을 사용했을 때

ex) select * from board where subject like '%제목'  : 제목으로 시작하는 것을 가지고 와라. 

select * from board where subject like '%제목'  : 제목으로 끝나는 것을 가지고 와라.

select * from board where subject like '%제목%' : 양쪽으로 끝나는 것을 다 가지고 와라. 

 

limit?

//아래 예는 5개 가져오기

SELECT * FROM [TABLE NAME] LIMIT 5;

//LIMIT 시작점, 갯수 (아래 예의 경우 5번째부터 10개 추출, 첫번째는 파라미터 0부터 시작)

SELECT * FROM [TABLE NAME] LIMIT 4,10;

 

  • SELECT * FROM [TABLE NAME] LIMIT 5;    
  • // LIMIT 시작점, 갯수 (아래 예의 경우 5번째부터 10개 추출. 첫번째 파라미터는 0 부터 시작함!)  
  • SELECT * FROM [TABLE NAME] LIMIT 4, 10;  

 

 

 

Data type

문자형 데이터타입 

데이터 유형 정의
CHAR(n)
무조건 정해진 숫자만 사용,4byte가 한글자 정도됨
고정 길이 데이터 타입(최대 255byte)- 지정된 길이보다 짦은 데이터 입력될 시 나머지 공간 공백으로 채워진다.
VARCHAR(n) 
게시판제목으로 많이 사용(제목이 길수도 짧을수도있기 때문)
가변 길이 데이터 타입(최대 65535byte)- 지정된 길이보다 짦은 데이터 입력될 시 나머지 공간은 채우지 않는다.
TINYTEXT(n) 문자열 데이터 타입(최대 255byte)
TEXT(n) 긴 글자를 넣을 때 사용, 게시판 내용, 인자값 없고 최대길이 사용 문자열 데이터 타입(최대 65535byte)
MEDIUMTEXT(n) 문자열 데이터 타입(최대 16777215byte)
LONGTEXT(n) 문자열 데이터 타입(최대 4294967295byte)

숫자형 데이터 타입 

데이터 유형 정의
TINYINT(n) 정수형 데이터 타입(1byte) -128 ~ +127 또는 0 ~ 255수 표현 가능하다.
SMALLINT(n) 정수형 데이터 타입(2byte) -32768 ~ 32767 또는 0 ~ 65536수 표현 가능하다.
MEDIUMINT(n) 정수형 데이터 타입(3byte) -8388608 ~ +8388607 또는 0 ~ 16777215수 표현 가능하다.
INT(n) 정수형 데이터 타입(4byte) -2147483648 ~ +2147483647 또는 0 ~ 4294967295수 표현 가능하다.
BIGINT(n) 정수형 데이터 타입(8byte) - 무제한 수 표현 가능하다.
FLOAT(길이,소수) 부동 소수형 데이터 타입(4byte) -고정 소수점을 사용 형태이다.
DECIMAL(길이,소수) 고정 소수형 데이터 타입고정(길이+1byte) -소수점을 사용 형태이다.
DOUBLE(길이,소수) 부동 소수형 데이터 타입(8byte) -DOUBLE을 문자열로 저장한다.

날짜형 데이터 타입

데이터 유형 정의
DATE    날짜는 무조건 Date data type 써야함, String X
ex) select * from board where month(board_date) = '2020'
날짜(년도, 월, 일) 형태의 기간 표현 데이터 타입(3byte)
TIME 시간(시, 분, 초) 형태의 기간 표현 데이터 타입(3byte)
DATETIME 날짜와 시간 형태의 기간 표현 데이터 타입(8byte)
TIMESTAMP 날짜와 시간 형태의 기간 표현 데이터 타입(4byte) -시스템 변경 시 자동으로 그 날짜와 시간이 저장된다.
YEAR 년도 표현 데이터 타입(1byte)

이진 데이터 타입 

데이터 유형 정의
BINARY(n) & BYTE(n) CHAR의 형태의 이진 데이터 타입 (최대 255byte)
VARBINARY(n) VARCHAR의 형태의 이진 데이터 타입 (최대 65535byte)
TINYBLOB(n) 이진 데이터 타입 (최대 255byte)
BLOB(n) 이진 데이터 타입 (최대 65535byte)
MEDIUMBLOB(n) 이진 데이터 타입 (최대 16777215byte)
LONGBLOB(n) 이진 데이터 타입 (최대 4294967295byte)

ex) 기본 게시판 board  

idx not null  int primary auto increment
subject not null  varchar(100)    
content   text    
today not null datetime    
hit   int    

IDX는 정확히 짚어줄 때 필요한데 그래서 필요한 것이 primary, auto increment

idx subject content today hit  
1 제목1 ㅇㄴㅇ 2021-04-21 10  
2 제목2 ㅎㅁㄴㅇ 2021-04-21 0  
3 제목3 ㅁㄴㅇ 2021-04-21 3  
4 dd 2021-04-21 4  
5 ee ㄴㅇ 2021-04-21    
userid userpw username
web7722 1234 김태희
web7722 1235 김태희

userid를 겹치게 안하기 위해서는 primary key auto increment 필요

'Node JS' 카테고리의 다른 글

get req.query.name / post req.body.name  (0) 2021.04.22
Data 넣기 및 이해하기  (0) 2021.04.22
Server 연결 전체 JS 구문  (0) 2021.04.21
req.body 가져오기 / Query문 작성/join.html  (0) 2021.04.21
JS Node 서버에 연결하기  (0) 2021.04.21