반응형

나는야 데이터사이언티스트/SQL 9

[Hive] python으로 DB 데이터 불러오기(DataFrame, column...)

요즘 회사에서 Hive 쓰는중 Hive SQL도 다른 SQL과 비슷해서 쓰는데 어려움은 없다 어쨌든 hive 쿼리로 python에서 DB 쓸때 필요해서 기록용 포스팅 from pyhive import hive #hive 라이브러리 import pandas as pd #DataFrame 만들어주기 #연결시키기 conn = hive.Connection(host='ip주소',port='포트',auth='권한?!',username='username',password='password') #쿼리날리기 cursor = conn.cursor() cursor.execute('query') result = cursor.fetchall() #column 들고오기 col = [column[0] for column in cu..

[Oracle]오라클에서 information_schema 이용하기

MySQL에서는 information_schema로 DB에 관한 다양한 정보들을 알 수 있습니다 Oracle에서도 그런 기능이 있긴 한데 문법이 조금 달라요 --테이블 정보 확인하기 select * from all_tables --컬럼 정보 확인하기 select * from all_tab_columns 그 외에도 select * from all 까지 쓰고 Ctrl + space 누르면 DB 관련 정보 테이블들이 나옵니다.

[MySQL/Oracle]테이블 & 컬럼 코멘트(comment) 조회 및 추가하기

MySQL Comment * Comment 설정 --테이블 comment 설정 #테이블 생성 시 CREATE TABLE [테이블명] ( [컬럼명] INT, ... ) COMMENT = 'table comment'; #특정 테이블만 설정 ALTER TABLE [테이블명] COMMENT = 'table comment'; --컬럼 comment 설정 #테이블 생성 시 CREATE TABLE [테이블명] ( [컬럼명] INT COMMENT 'column1 comment', ... ); #특정 컬럼만 설정 ALTER TABLE [테이블명] MODIFY [컬럼명] [데이터타입] [제약조건] COMMENT 'column1 comment'; * Comment 조회 --테이블 comment 조회 SELECT TABLE_..

[MySQL]information_schema란 ? (정의 및 테이블 종류)

information_schema란 ? INFORMATION_SCHEMA란 MySQL 서버 내에 존재하는 DB의 메타 정보(테이블, 칼럼, 인덱스 등의 스키마 정보)를 모아둔 DB다. INFORMATION_SCHEMA 데이터베이스 내의 모든 테이블은 읽기 전용이며, 단순히 조회만 가능하다. 즉, 읽기전용(Read-only)으로 사용자가 직접 수정하거나 관여할 수는 없다. 실제로 이 데이터베이스 내의 테이블은 레코드가 있는 것이 아니라, SQL을 이용해 조회할 때마다 메타 정보를 MySQL 서버의 메모리에서 가져와서 보여준다. 이런 이유로 한꺼번에 많은 테이블을 조회할 경우 시간이 많이 걸릴 수도 있다. * 메타 데이터(Metadata) 란 데이터의 데이터로서, 데이터베이스 또는 테이블의 이름, 컬럼의 데..

[MySQL/Oracle]데이터베이스의 모든 테이블 권한 주기

MySQL #a_user 사용자는 study_db 데이터베이스의 모든 table에 대해서 SELECT, INSERT 권한을 가진다. GRANT SELECT, INSERT ON study_db.* TO a_user; #데이터 베이스의 모든 테이블에 대해 모든 권한을 준다. GRANT ALL ON study_db.* TO a_user; #a_user는 모든 데이터 베이스의 모든 테이블에 대해 SELECT 권한을 가진다. GRANT SELECT ON *.* TO a_user; 출처: https://futurists.tistory.com/20 [미래학자] Oracle Select 'grant select,insert,delete, update on' || tname || 'to DB_Name;' From tab..

[MySQL/Oracle]where 절에서 IF문 사용하기

where 절에서 if문 쓸 때, 상황에 따라 다르겠지만 mysql은 if을 사용. oracle은 case when을 사용하는 것이 오류가 잘 안나는 것 같아요 MySQL IF(조건, '참', '거짓') #예시 SELECT * FROM TAXI WHERE IF(PAMENT_SECONDS = 1 , 'CASH', 'OTHER') ORACLE CASE WHEN 조건절 THEN 참일때 값 ELSE 거짓일때 값 END #예시 SELECT * FROM TAXI WHERE (CASE WHEN PAMENT_SECONDS = 1 THEN 'CASH' ELSE 'OTHER' END)

[MySQL/Oracle]오라클로 substring_index 사용하기

오라클로 substring_index 사용하는 방법을 알아보기 전에 MySQL에서 substring_index를 어떻게 사용하는지부터 알아보자. substring_index SUBSTRING_INDEX( 1번째 인수 : 컬럼명 2번째 인수 : 기준문자, 구분 문자 3번째 인수 : 보여질 위치, 위치 기준 음수(-)는 뒷부분 부터, 양수(+)는 앞부분 부터 ) substring_index Example SELECT SUBSTRING_INDEX("www.google.com",'.',1) FROM DUAL; #결과값 : www SELECT SUBSTRING_INDEX("www.google.com",'.',2) FROM DUAL; #결과값 : www.google SELECT SUBSTRING_INDEX("www..

[MySQL/Oracle]시간, 날짜 데이터 포맷 바꾸기, 더하기

ORACLE 시간, 날짜 데이터 바꾸기 SELECT --날짜 포맷 TO_CHAR(SYSDATE,'DAY'),-- 일요일 (요일 표시) TO_CHAR(SYSDATE,'DY') --일 (요일을 한자리로 표시) TO_CHAR(SYSDATE,'WW'), -- 28 (일년 기준 주를 00 ~ 53 형태로 표시) TO_CHAR(SYSDATE,'DDD'),-- 194(1년기준 일 수) # TO_CHAR(SYSDATE,'W') -- 2 (한달 기준 몇번째 주) TO_CHAR(SYSDATE,'DL'),--2020년 07월 12일 일요일 --시간 포맷 TO_CHAR(SYSDATE,'AM'),--오전 TO_CHAR(SYSDATE,'PM'),--오후 TO_CHAR(SYSDATE,'HH'), -- 9 (시간을 0 ~ 12 형태..

반응형