본문 바로가기

Language/MySQL

(33)
[MySQL] 정렬 - ORDER BY SELECT 명령에 ORDER BY 구를 지정하면 검색 결과의 행 순서를 변경할 수 있다. ORDER BY 구를 지정하지 않으면 데이터베이스 내부에 저장된 순서로 반환 언제나 정해진 순서로 결과값을 얻기 위해서는 ORDER BY 구를 지정해야 한다. [SYNTAX] SELECT 열명 FROM 테이블명 (WHERE 조건식) ORDER BY 열명 DESC로 내림차순 정렬, ASC로 오름차순 정렬한다. ASX나 DESC로 정렬방법을 지정하지 않은 경우 ASC로 간주된다. 대소 관계 ORDER BY로 정렬할 때는 값의 대소 관계가 중요 수치형 데이터는 숫자의 크기로 판별 날짜 시간형 데이터도 숫자의 크기로 판별 ( 작다 = 이전, 크다 = 최근) 문자열형 데이터는 사전식 순서에 의해 판별 a열은 문자열형으로 되..
[MySQL] 패턴 매칭에 의한 검색 특정 문자나 문자열이 포함되어 있는지를 검색하고 싶은 경우 '패턴 매칭' 또는 '부분 검색' 사용 [SYNTAX] 열 LIKE 패턴 LIKE로 패턴 매칭 하기 패턴을 정의할 때 '%(퍼센트)', '_(언더스코어)' 두 가지의 메타 문자(특수문자) 사용 가능 % 는 임의의 문자열 의미 _ 는 임의의 문자 하나 의미 % 는 임의의 문자열과 매치하며, 빈 문자열에도 매치한다. LIKE로 % 검색하기 메타 문자와 동일한 문자를 LIKE로 검색할 경우 이스케이프라는 방법으로 처리 가능 LIKE로 %를 검색하는 경우 % 앞에 \를 붙임 즉, %를 포함하는 데이터를 검색하고 싶을 경우 조건식은 아래와 같다. WHERE text LIKE '%\%%' 여기서 맨 앞과 마지막의 % 는 메타문자로 임의의 문자열을 의미 중간..
[MySQL] 조건 조합하기 [SYNTAX] 조건식1 AND 조건식2 조건식1 OR 조건식2 NOT 조건식 AND로 조합하기 AND는 논리 연산자 중 하나로 좌우에 항목이 필요한 이항 연산자 '모든 조건을 만족하는 경우 조건식은 참이 된다'라고 할 때 AND 연산자로 조건식 조합 a열과 b열이 모두 0이 아닌 행을 검색한다. OR로 조합하기 '어느 쪽이든 하나만 참이 되면 조건식은 참이 된다'고 할때 OR로 조건식 연결 AND와 달리 어느 쪽이든 조건을 만족하면 결과는 참이 된다. a열이 0이 아니거나 b열이 0이 아닌 행을 검색한다 AND와 OR를 사용할 경우 주의점 no열의 값이 1 또는 2인 행을 추출하고 싶을 경우 상수 '2'는 논리 연산으로 항상 참이 되기 때문에 결과적으로 모든 행을 반환하여 올바른 결과를 얻을 수 없다...
[MySQL] 검색 조건 지정하기 데이터 검색에는 열을 지정하는 방법과 행을 지정하는 방법이 있다. 열을 선택할 때는 SELECT 구를 사용, 행을 선택할 때는 WHERE 구를 사용한다. SELECT 구에서 열 지정하기 [SYNTAX] SELECT 열1, 열2 ... FROM 테이블명 (열은 콤마( , )로 구분) 위처럼 테이블의 열이 정의된 순서와 상관없이 열의 순서는 임의대로 지정할 수 있다. 동일한 열을 중복해서 지정해도 된다. 열을 지정하지 않거나, 테이블에 존재하지 않는 열을 지정할 경우 에러가 발생한다. WHERE 구에서 행 지정하기 [SYNTAX] SELECT 열 FROM 테이블명 WHERE 조건식 WHERE구의 조건식은 '열과 연산자, 상수로 구성되는 식' 이다. sample21 테이블에서 WHERE구로 no열 값이 2인 ..
[MySQL] 테이블 구조 참조하기 [Command] DESC 테이블명; DESC 명령으로 테이블에 어떤 열이 정의되어 있는지 알 수 있다. DESC는 SQL 명령이 아님 Field - 열 이름 표시 Type - 해당 열의 자료형, 괄호 안의 숫자는 최대 길이를 나타냄 Null - NULL값을 허용하는지 제약사항, Yes는 NULL값 허용 Key - 해당 열이 Key로 지정되어있는지를 나타냄 Default - 그 열에 주어진 기본값, 생략했을 경우 적용되는 값 자료형 INTERGER 형 수치형의 하나, 정수값을 저장할 수 있는 자료형 소수점은 포함할 수 없음 CHAR 형 문자열을 저장할 수 있는 자료형 선언시 열의 최대 길이를 지정해야 함 언제나 고정된 길이로 데이터 저장되어 '고정길이 문자열'이라 함 VARCHAR 형 문자열을 저장할 수..
[MySQL] SELECT 명령 명령 프롬프트에서 mysql 실행하기 1. 키보드의 윈도우버튼 + R을 눌러 실행창을 열어 cmd 입력 후 열기 또는 작업표시줄의 윈도우버튼 옆 검색창에 cmd 검색 후 실행 (키보드 윈도우버튼 누르면 커서가 검색창으로 이동) 2. mysql 실행해서 접속하기 위처럼 로그인과 동시에 데이터베이스를 선택할 수도 있지만 위처럼 데이터베이스 목록을 확인하고 원하는 데이터베이스를 선택할수도 있다. SELECT 명령 [SYNTAX] SELECT * FROM 테이블명; 명령을 입력할 때는 스페이스를 넣어 구분한다. 명령의 마지막에는 세미콜론(;)을 붙인다. 세미콜론을 붙이지 않고 엔터를 누르면 명령이 실행되지 않고 이어서 명령을 입력할 수 있다 애스터리스크( * )는 '모든 열'을 의미하는 메타문자이다. 원하는 컬..
[MySQL] 데이터베이스 서버 1. 클라이언트/서버 모델 클라이언트/서버 모델이란 소프트웨어를 사용자 조작에 따라 요청을 전달하는 '클라이언트'와 해당 요청을 받아 처리하는 '서버'로 나누고, 복수의 컴퓨터 상에서 하나의 모델을 구현하는 시스템 ○ 웹 시스템에서의 클라이언트/서버 웹 시스템이란 브라우저와 웹 서버로 구성되는 클라이언트/서버 모델의 시스템 ○ RDBMS의 클라이언트/서버 RDBMS는 사용자 별로 데이터베이스 접근을 제한할 수 있어 ID와 비밀번호를 이용한 사용자 인증 필요 ○ SQL 명령 실행 RDBMS에 접속하면 SQL명령을 서버에 보낼 수 있음 2. 웹 애플리케이션의 구조 웹 서버 + 데이터베이스 서버의 조합으로 구축(일반적임) 웹 서버에서 데이터베이스로 접속하는 것은 PHP나 루비 등의 언어로 만들어진 CGI 프로..
[MySQL] 다양한 데이터베이스 1. 데이터베이스의 종류(저장 방법에 따른 분류) ○ 계층형 데이터베이스 : 역사가 오래된 DBMS 폴더와 파일 등의 계층 구조로 데이터를 저장하는 방식 ex) 하드디스크, DVD 파일 시스템 ○ 관계형 데이터베이스 : '관계 대수(relational algebra)'라는 것에 착안하여 고안한 데이터베이스 행과 열을 가지는 표 형식 데이터(2차원 데이터)를 저장하는 형태의 데이터베이스 ○ 객체지향 데이터베이스 : 객체 그대로를 데이터베이스의 데이터로 저장하는 것 ○ XML 데이터베이스 : XML이란 자료 형식을 가리키는 용어 태그를 이용해 마크업 문서를 작성할 수 있게 정의한 것(html과 흡사) XML 형식으로 기록된 데이터를 저장하는 데이터베이스 ○ 키 - 밸류 스토어(KVS) : 키와 그에 대응하는..