SQL 응용 - 복습 1
CREATE TABLE CANCER
(암종 VARCHAR2(50)
,질병코드 VARCHAR2(20)
,환자수 NUMBER(10)
,성별 VARCHAR2(20)
,조유병률 NUMBER(10,2)
,생존률 NUMBER(10,2))
암발생률 데이터를 공공데이터 포털에서 다운받아 진행한다.
Import 기능을 사용하면 다운 받은 데이터를 내가 생성한 테이블에 매칭시킬 수 있다.
SELECT REGEXP_SUBSTR('I never graduated from college', '[^ ]+', 1, 2) word FROM dual
REGEXP_SUBSTR : 정교하게 문자열에서 원하는 단어나 철자를 추출할 수 있다.
[^ ] : 공백이 아니면서 철자가 여러 개가 있는 것을 뜻함, 즉 어절을 의미
-> 첫번째부터 읽어, 두번째로 만나는 어절을 출력하라 -> NeverSELECT REGEXP_SUBSTR(LOWER(speech_text), '[^ ]+', 1, a) word FROM speech, (SELECT level a FROM dual CONNECT BY level <= 52)
SELECT word , COUNT(*) FROM ( SELECT REGEXP_SUBSTR(LOWER(speech_text), '[^ ]+', 1, a) word FROM speech, (SELECT level a FROM dual CONNECT BY level <= 52) ) WHERE word IS NOT NULL GROUP BY word ORDER BY COUNT(*) DESC
어절 단위로 나눈 단어들을 카운트 하여 가장 많이 나오는 단어순으로 정렬하는 쿼리
CREATE VIEW SPEECH_VIEW AS SELECT REGEXP_SUBSTR(LOWER(speech_text), '[^ ]+', 1, a) word FROM speech, (SELECT level a FROM dual CONNECT BY level <= 52)
SELECT COUNT(word) as "긍정 단어" FROM speech_view WHERE LOWER(word) IN (SELECT LOWER (p_text) FROM positive)
긍정 단어를 서브 쿼리로 비교하여 speech_view에서 긍정 단어가 몇 개가 있는지 조회한다.
SELECT *
FROM (
SELECT UNIVERSITY, TUITION_FEE ,
RANK() OVER (ORDER BY TUITION_FEE DESC NULLS LAST) 순위
FROM UNIVERSITY_FEE
)
WHERE 순위 =1 ;
대학 입학금이 가장 높은 대학교가 어디인지 찾기
-> UNIVERSITY_FEE 테이블에서 등록금이 가장 높은 학교 순으로 순위를 부여하여 출력하고, 이 서브 쿼리의 결과 중 순위가 1위인 것만 출력한다
SELECT A_NAME as "상품", A_PRICE as "가격", M_NAME as "매장명"
FROM PRICE
WHERE A_PRICE = (SELECT MAX(A_PRICE)
FROM PRICE);
서브 쿼리문을 사용하여 price 테이블에서 최대 가격을 출력하고 메인 쿼리에서 그 가겨에 해당하는 품목 이름과 가격을 출력합니다.
Author And Source
이 문제에 관하여(SQL 응용 - 복습 1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@gugu_dragon/SQL-응용-복습-1저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)