SQL/Sqlite
-
SQLite 6. 서브쿼리SQL/Sqlite 2021. 12. 30. 14:09
SELECT * FROM mlb_players WHERE "Weight(lbs)">240 AND 조건문을 서브 쿼리로 바꿔 보았다. SELECT * FROM ( SELECT * FROM mlb_players WHERE "Weight(lbs)">240 ) WHERE Position='First Baseman' (다음) 내부의 쿼리가 먼저 실행되고, 그 결과(테이블)가 외부의 쿼리 문으로 전달된다. SELECT * FROM mlb_players WHERE Position='First Baseman' AND "Weight(lbs)">240 속도 느려지고, 구문 복잡하고 별 메리트가 없어 보이는 게 사실이나... 여러 테이블을 넘나 들며 쿼리를 작성해야 할 때는 꽤 유용하게 쓰인다. 원래 실습 데이터에는 테이..
-
SQLite 5. 집계함수와 GROUP BYSQL/Sqlite 2021. 12. 30. 12:04
집계함수, 집약함수, 그룹함수 모두 같은 말이다. 데이터를 가져오지 않고 하나의 값으로 요약한다. COUNT, SUM, AVG, MAX, MIN 이 있다. COUNT 행의 개수를 리턴한다. SELECT count(*) FROM mlb_players AVG SELECT avg("Height(inches)") as avg, max("Height(inches)") as max, min("Height(inches)") as min FROM mlb_players AVG 평균 SUM 합계 MIN 최소 MAX 최대 GROUP BY * GROUP BY 절은 WHERE 뒤 ORDER BY 앞에 위치해야 한다. SELECT * FROM mlb_players GROUP BY Team 실행해보면 각팀의 가장 앞에 있던 선수들..
-
SQLite 4. 연산 필드, 문자열 함수, DATETIME 함수SQL/Sqlite 2021. 12. 29. 22:09
[선수명] is [팀명]'s [포지션] 이라는 문자열을 만들어 보자. ex) Dallas McPherson is ANA 's Third Baseman 컬럼 자리에 문자열을 사용할 수 있다. SELECT Name, ' is ', Team, "'s ", Position FROM mlb_players 이제 합치기만 하면 되는데... SELECT Name||' is '||Team||"'s "||Position FROM mlb_players || 으로 문자열을 합칠 수 있다. 컬럼명이 예술이다. AS를 사용해서 바꿀 수 있다. SELECT Name||' is '||Team||"'s "||Position AS name_team_position FROM mlb_players 컬럼과 필드는 같은 말이지만, 연산 시에는..
-
SQLite 3. WHERESQL/Sqlite 2021. 12. 29. 08:34
IF문과 유사한 개념이다. 비교 조건에 해당되는 행만 출력한다. 단일 값 SELECT * FROM mlb_players WHERE Position="Catcher" ORDER BY Team 일치하지 않는 값 SELECT * FROM mlb_players WHERE Position!="Catcher" ORDER BY Team SELECT * FROM mlb_players WHERE Position"Catcher" ORDER BY Team '!=', '' 둘 다 가능하다. 범위 SELECT * FROM mlb_players WHERE 23.01
-
SQLite 2. ORDER BYSQL/Sqlite 2021. 12. 28. 23:48
* ORDER BY 절은 SELECT 문의 가장 마지막에 있어야 한다. 정렬하기 기준이 되는 컬럼을 정해준다. SELECT * FROM mlb_players ORDER BY Name 여러 컬럼으로 정렬하기 SELECT * FROM mlb_players ORDER BY Team, Name 팀을 첫 번째 기준으로, 이름을 두 번째 기준으로 정렬하면, 한눈에 팀과 그 팀의 선수를 확인할 수 있다. ASC(Ascending), DESC(Descending) 계단을 오르는 것 처럼 뒤로 갈 수록 커지는 순서로 정렬하는 것을 오름차순이라 한다. 팀에서 키를 오름차순(ASC)으로 정렬하자. 기본값이 ASC이므로 굳이 명시하지 않는다. SELECT * FROM mlb_players ORDER BY Team, "Heig..
-
SQLite 1. SELECTSQL/Sqlite 2021. 12. 28. 22:42
DB를 커맨드 라인으로 조작할 수도 있지만, 초보가 학습하기에는 GUI 환경이 더 좋은 것 같다. 가장 먼저 기본 용어 몇 가지 테이블 구조화 된 데이터 목록. 이렇게 데이터를 테이블 형식으로 저장해서 쓴다. Column, Row 세로 줄을 Column이라고 부르고, 가로 줄을 Row라고 부른다. 주키 테이블에는 고유한 값이 있야 한다. 주키는 UNIQUE 해야 되고 NULL 이면 안된다. (동명이인이 있는) 아담의 키를 180으로 고쳐줘 라고 DB에게 요청한다면.. 모든 아담의 키를 180을 고칠 수도 없는 노릇이다... 고유 번호가 있으면 편하게 처리할 수 있다. SELECT 항목 가져오기 SELECT Name FROM mlb_players; SQL에서 여러 개의 공백은 하나로 인식된다. 한 문장으로..
-
SQLite 0. 연습환경 구축, 데이터 타입SQL/Sqlite 2021. 12. 28. 21:49
잊을만하면 다시 꺼내 쓰는 SQL. ㅠㅠ개인적으로 예전엔 MySQL을 많이 썼는데, 요즘은 SQLite를 많이 쓴다. 기억을 보조하기 위해스니펫 위주로 설명은 아주 간략히 SQLite를 정리하고자 한다. 0. SQLite의 개요시간 관계상 아래의 링크를 참고하자. 특히 gywn(성동찬 님의 블로그) 대박~! 역시 DBA님 답게 핵심만 딱... https://gywn.net/2013/08/let-me-intorduce-sqlite/https://www.itworld.co.kr/news/117213 https://news.hada.io/topic?id=4558 1. DB Browser for SQLite 다운로드https://sqlitebrowser.org/dl/ Downloa..