SQL
SQL 기초 구문
INSERT
INSERT INTO tablename VALUES(값1, 값2, ...);
혹은
INSERT INTO tablename (col1, col2, ...) VALUES(값1, 값2, ...);
INSERT INTO ins_duplicate VALUES (1,'Antelope') ON DUPLICATE KEY UPDATE animal='Antelope';
SELECT
SELECT col1, col2, ... FROM tablename;
컬럼명을 *로 하면 모든 컬럼 의미.
mysql> SELECT col1 AS '성명', col2 AS '국어점수' FROM grade;
컬럼의 이름을 바꿔서 출력.
mysql> SELECT * FROM tablename ORDER BY col1 DESC; mysql> SELECT col1, korean + math english AS '총점' FROM tablename ORDER BY '총점' ASC;
DESC는 내림차순 ASC는 오름차순.
mysql> SELECT * FROM grade WHERE korean < 90;
조건줘서 SELECT.
mysql> SELECT * FROM grade LIMIT 10;
결과중 처음부터 10개만 가져오기
mysql> SELECT * FROM grade LIMIT 100, 10;
결과중 100번째부터 10개만 가져오기. 첫번째 레코드는 0번 부터 시작한다.
MySQL (>4.0) 쓴다면 중복키가 있으면 업데이트하고 아니면 인서트 하는 명령인 INSERT… ON DUPLICATE KEY UPDATE .. 를 써서
아래의 쿼리에서 ?를 seq 값으로 대치시키고 실행시키면 됩니다. insert into counter(seq,count) values(?,1) on duplicate key update count = count+1
UPDATE
UPDATE tablename SET col1=새값 WHERE 조건
데이터의 수정(UPDATE)
UPDATE 테이블명 SET 필드명=필드값 또는 산술식 {, 필드명 = 필드값 또는 산술식}*[WHERE 검색조건]
UPDATE userdb SET sex = 'F' WHERE name = '김현아'
(userdb테이블의 name=김현아인 필드의 sex를 F 로 수정한다)
UPDATE userdb SET sex = 'F'
만일 위와 같이 WHERE절로 검색조건을 명시하지 않은 경우에는 해당테이블내의 모든레코드의 필드값이 설정한값으로 수정되므로 유의해야한다.
UPDATE userdb SET sex = 'F'
UPDATE userdb SET milage = milage + 300
DELETE
mysql> DELETE FROM tablename WEHRE 조건
기타
dev.mysql.com/downloads/gui-tools/5.0.html