목록ORACLE DB (SQL) (7)
인사이트
결론 1번과 3번방법만 된다. = in과 =을 함께 쓰면 원하는 결과를 얻을 수 없다. 사람이 해석하기에는 너무 말이 되는 말이지만 기계는 아닌가보다.
오라클DB에서 제공하는 특별한 column 이 있다. 바로 rownum이라는 아이이다. 바로 예제로 가보겠다. 급여가 가장 높은 사람을 순서대로 세운 다음, 그 중 2~4번째인 사람의 데이터를 조회하라는 미션을 받았다. 난 아주 당당하게 위처럼 적었고, 당연히 실행될 줄 알았다. 왜냐면 저 의미자체가 emp라는 테이블에서 rownum이 2~4번째인 사람의 데이터만을 가져오라는 거니까 결과는 처참했다(나오지 않았다ㅎㅎ) 왜 안나왔을까? 문제가 없어보이는데 말이다. 2가지를 간과했었기 때문이다. 1. Rownum이 카운트를 할 땐 반드시 1부터 시작한다. 2. 쿼리 실행 순서는 from > where > group by > having > select > order by이다. 위 두 문제점을 해결하려면 어떻..
오늘 배운 것 중 큰 가지 1. DDL(테이블 생성, 삭제, 변경 명령어) - CREATE(테이블 생성) - DROP(테이블 삭제) - ALTER(테이블 수정) 2. DML(데이터 조작 명령어) - SELECT(데이터 조회) - INSERT(데이터를 신규로 추가할 때) - UPDATE(데이터 수정) - DELETE(데이터 삭제) 3. DCL(데이터 제어 언어) - GRANT(권한 부여) - REVOKE(권한 회수) 4. TCL(DCL에서 트랜잭션을 제어하는 명령이 아래 명령만 따로 분리한 언어) - COMMIT : 실제 테이블에 저장시킴(원래 테이블이 저장되어 있는 파일과 지금 작업을 실행하고 있는 테이블의 파일이 다름, 기존 테이블데이터를 복사해서 현재 작업하고 있는 테이블에서 조작함. 그리고 comm..
참고로 해당 쿼리 실행해보고 싶으면 실행하고 싶은 쿼리 쪽에 커서 두고 F9누르면 된다. 1. WHERE 조건 2. 논리연산자(NOT, ) - 다른 건 직관적으로 다 알 수 있어서 정리하지 않았다 3. 연산자(AND) 4. 연산자(OR) 5. 특정 글자 조회(LIKE &, LIKE _) 6. BETWEEN A AND B 7. IN 8. IS NULL 9. 정렬(오름차순, 내림차순) 10. dual table, ABS(절대값) 11. ROUND(반올림 함수) 12. 버림 함수(TRUNC) 13. MOD 함수(나머지 구할 수 있는 함수) 14. LENGTH(문자 길이 나타내는 함수) 15. 문자열 추출 함수(SUBSTR, INSTR) 16. LIKE, INSTR, SUBSTR이용해서 같은 결과 내기 17. ..
학원에서 열심히 따라하다가 컴퓨터가 갑자기 멈췄다. 그래서 아무 생각 없이 작업관리자에서 프로그램을 강제종료했다. 당연히 저장은 못했다^^ 이 때부터 너무 힘들었다. 구글링으로 쿼리 복구하는 걸 찾아보기도 해야하고, 진도도 따라가야하고.... 그러다 결국 찾아냈다! 내가 작성했던 모든 쿼리를 조회하는 명령이다 쿼리에 위 한 줄 치고 F8누르면 아래 내가 이전에 쳤던 쿼리내용이 다~~나온다 진짜 다 나온다. 이전에 적었던 내용들은 다 나온다. 심지어 잘못 쳐서 지웠던 것 까지도!
오라클db를 설치하면서 내가 헷갈린 부분이 있다. 그것만 정리했다. 1. 열심히 다 설치한 것 같아서 실행하려고 하는데 이런 오류가 떴다 해결 방법: 탐색기에서 C:\oraclexe\app\oracle\product\11.2.0\server를 치면 폴더가 하나 열리는데 거기에 Get_Started라는 파일이 있다. 마우스 우클릭으로 속성에 들어가서 url속성을 http://127.0.0.1:8080/apex/f?p=4950으로 바꾸면 된다! scott계정은 오라클 db를 설치하면 오라클에서 공부하라고 기본적으로 넣어준 테이블들이 있는 사용자이다 아래는 sql develpoer가 아니라 sql command line에서 한 거다 1. scott.sql파일을 끌어와서 2. conn scott(사용자이름임)/..