SQL: 11개의 글
이번 포스팅 내용은 자주 사용되는 SQL문과 MongoDB와의 쿼리를 비교하는 포스팅입니다. SQL Schema Statements MongoDB Schema Statements CREATE TABLE people( id MEDIUMINT NOT NULL AUTO_INCREMENT, user_id varchar(30), age number, status char(1), PRIMARY KEY(id) ) db.people.insertOne({ user_id:"abc123", age:55, status:"A" }) 암시적으로 삽입 작업에서 _id를 생략했다면 내부적으로 _id에 값을 추가한다. 컬렉션 또한 삽입시점에 생성된다. 그러나 컬렉션을 명시적으로 생성가능하다. db.createCollection("pe..
1. SQL EXPLAIN 정리 1.1 부서 테이블 select * from dbadev.dept ; 부서테이블에는 4개의 행 ( 4rows returned ) 1.2 직원 테이블 select * from dbadev.emp ; 직원테이블에는 14개의 행 ( 14rows returned ) 1.3 부서와 직원 테이블을 내부조인 SELECT a.deptno , a.dname , a.loc , b.empno , b.ename , b.job FROM dbadev.dept as a INNER JOIN dbadev.emp as b ON a.deptno = b.deptno WHERE a.deptno= '20' ; 1.4 EXPLAIN을 사용한 부서테이블과 직원테이블 내부조인 쿼리 실행결과 EXPLAIN SELECT..
WHERE 절의 조합 예제 데이터 : User_Table SELECT * FROM User_Table ;---------------------------------------------------------------------------------------------------------------------------AND 연산자의 사용 입력 -SELECT user_id , user_mobile , user_gender , user_amount , user_addr FROM User_TableWHERE user_gender = 'male' AND user_amount >= 5500 ; 풀이 : User_Table 에서 성별(user_gender)이 남자이고 보유금액(user_amount)가 5500..
데이터 가져오기 - SELECT ~ FROM 예제 table 1테이블 생성 및 데이터 삽입 User_Table user_num user_iduser_passuser_mobileuser_gender1user1aaaa01011112222male2user2bbbb01033334444female3user3cccc01055556666male4user4dddd01077778888female5user5eeee01088889999male 기본 SELECT 문(어디서 무엇을)User_Table에서 user_mobile 에 대한 정보를 가져와 보자 SELECT user_mobile FROM User_Table ;출력 User_Table에서 user_mobile 에 대한 정보를 가져 왔지만 테이블의 다른 순서로 나열되어 출..
테이블 생성과 제어 테이블 생성 - CREATE TABLE- 만들 새 테이블의 이름으 CREATE TABLE 뒤에 지정한다.- 테이블 열의 이름과 정의를 콤마(,)로 구분하여 지정한다.- 테이블의 위치를 지정해야 하는 DBMS도 있다. CREATE TABLE temp_Table (field1 char(10) NOT NULL ,field2 char(10) NOT NULL ,field3 DECIMAL(8,2) NOT NULL ,field4 varchar(1000) NULL); 실행시 빈 테이블 생성 field1field2 field3 field4 테이블 이름은 CREATE TABLE 키워드 뒤에 지정되며, 테이블 정의(모든열) 은 괄호 내에 위치하고 열사이는 콤마( , ) 로 구분 된다.이 테이블의 경우 네..
데이터 수정 / 변경(UPDATE)- 테이블의 특정한 행을 수정/변경(update)- 테이블의 모든 행을 수정/변경(update) 기본 형식- 업데이트 할 테이블- 열 이름과 새값- 수정/변경(update) 할 행을 결정 짓는 필터 조건 * 예시 : Temp_Table Temp_Table 의 field1 의 값을 유일 값인 기본키로 하고 data2-3 의 값을 변경해보자.field1 field2field3 field4 data1data1-2data1-3data1-4data2data2-2data2-3data2-4data3data3-2 data3-3data3-4 UPDATE Temp_Table SET field3='변경된 값' WHERE field1 = 'data2';해석 해보자면 Temp_Table 의 f..
Data 삽입Insert 의 사용 용도- 하나의 완전한 행을 삽입- 하나의 부분적인 행을 삽입- Query 결과를 삽입 열(field) 가 총 10개인 table 이 있다고 하자.table 명 : Temp_Table각 열(field) 이름 및 행(record)의 datafield1 field2field3 field4 field5 field6 field7 field8 field9 field10 data1data1-2data1-3 data1-4 data1-5 data1-6 data1-7 data1-8 data1-9 data1-10 완전한 record 의 삽입 INSERT INTO Temp_TableVALUES('data2','data2-2','data2-3','data2-4','data2-5','data2-..
[1] SQL의 이해SQL(S-Q-L로 각 문자를 따로 발음하거나 붙여서 sequel - 즉 시퀄 이라고 발음함)Structured Query Language(구조적 쿼리 언어) 의 약자이다. SQL 은 데이터베이스와의 통신을 위해 특별히 고안된 언어이다. SQL의 목적 - DATABASE의 제어- 데이터베이스에서 데이터를 읽고 데이터베이스를 쓰기 위한 용도로 만들어진 언어SQL 확장-표준 SQL은 ANSI 표준 위원회에서 관리하고 있기 때문에 ANSI SQL 이라 부른다. 모든 주요 DBMS는 각자 확장 기능이 있지만 이 ANSI SQL을 충실하게 지원하며, PL-SQL, Transact-SQL 등과 같이 자신들의 SQL에 이름을 붙여 표현한다.- 많은 DBMS 회사에서 SQL 을 지원하지만 자신들만의..
USER 정보를 변경하기 위해서는 ALTER USER문을 사용한다.ALTER USER문으로 변경 가능한 옵션- 비밀번호- 운영체제 인증- 디폴트 테이블 스페이스- 임시 테이블 스페이스- 테이블 스페이스 분배 할당- 프로파일 및 디폴트 역할USER 수정 문법 USER 수정 예제 -- SYS 권한으로 접속한다. C:\> SQLPLUS /NOLOG SQL> CONN / AS SYSDBA -- scott USER의 비밀번호를 수정한다. SQL> ALTER USER scott IDENTIFIED BY lion; 사용자가 변경되었습니다. -- scott USER의 비밀번호가 변경된 것을 확인할 수 있다. SQL> CONN scott/lion 접속되었습니다. SQL> CONN / AS SYSDBA 접속되었습니다. -..
- 새로운 USER를 생성하기 위해서는 CREATE USER문을 이용하면 된다.- USER를 생성하기 위해서는 USER생성 권한이 있는 사용자로 접속해야 한다.USER 생성 문법- user_name : USER 이름- BY password : USER가 데이터베이스에 의해 인증되도록 지정하며, 데이터베이스 USER 로그인시 사용하는 비밀번호 이다.- EXTERNALLY : USER가 운영 체제에 의해서 인증되도록 지정한다.- DEFAULT TABLESPACE는 USER 스키마를 위한 기본 테이블스페이스를 지정 한다.- TEMPORARY TABLESPACE는 USER의 임시 테이블스페이스를 지정한다.- QUOTA절을 사용하여 USER가 사용할 테이블스페이스의 영역을 할당한다.- PASSWORD EXPIRE..