특정일자의 요일을 구하고자 할 때, 사용하는 함수가 존재한다. 모든 언어에 요일을 구하는 함수가 있으며, 표준이 있기 마련이다. 일반적인 프로그래밍 언어는 전통적으로 일요일로 시작하며 0을 리턴한다. 일(0), 월(1), 화(2), 수(3), 목(4), 금(5), 토(6) 프로그래밍 언어와 다르게 ODBC에서는 다른 값을 리턴한다. 일(1), 월(2), 화(3), 수(4), 목(5), 금(6), 토(7) 여기서 MySQL과 MariaDB에서 제공하는 WEEKDAY()는 리턴 값이 ODBC 표준을 따르지 않는다는 점이다. 월(0), 화(1), 수(2), 목(3), 금(4), 토(5), 일(6) 특별히 WEEKDAY()를 써야 되는 경우가 아니라면 ODBC 표준을 따르는 DAYOFWEEK()를 사용해야 실수..
일반적인 CHAR, VARCHAR, TEXT 타입의 컬럼에 조건 비교를 하면 대소문자 구분을 하지 않는다. 조건에서 대소문자 구분이 필요한 경우 BINARY 함수를 사용하면 된다. SELECT ID FROM MEMBER WHERE ID = 'ref'; SELECT ID FROM MEMBER WHERE BINARY(ID) = 'Ref'; MySQL 공식 문서에는 아래와 같이 언급하고 있다. For nonbinary strings (CHAR, VARCHAR, TEXT), string searches use the collation of the comparison operands. For binary strings (BINARY,VARBINARY, BLOB), comparisons use the numeric..
-- 하루 SELECT COLUMN1 , COLUMN2 , COLUMN3 , .... FROM TABLE WHERE DATE_COLUMN BETWEEN DATE_ADD(NOW(), INTERVAL -1 DAY) AND NOW(); -- 일주일 SELECT COLUMN1 , COLUMN2 , COLUMN3 , .... FROM TABLE WHERE DATE_COLUMN BETWEEN DATE_ADD(NOW(), INTERVAL -1 WEEK) AND NOW(); -- 한달 SELECT COLUMN1 , COLUMN2 , COLUMN3 , .... FROM TABLE WHERE DATE_COLUMN BETWEEN DATE_ADD(NOW(), INTERVAL -1 MONTH) AND NOW();
Hadoop 3.0에서의 신규로 추가된 주요 기능 중 하나인 Erascre Coding(EC) 적용 방법에 대해 알아보자. Hadoop은 기본적으로 데이터 유실에 대비하여 데이터 복제를 한다. 기본 복제 단위가 3이어서, 파일 1개당 2개의 복제본을 가지게 된다. 이로 인해 1GB 데이터 저장에 3GB의 저장소를 사용하게 된다. Erascre Coding(EC)은 1개의 데이터에 0.5개의 패리티 비트를 이용하여 저장하기 때문에 1GB 데이터 저장에 1.5GB의 저장소를 사용하게 되어 효율성이 증가한다. ec policy 리스트 hdfs ec -listPolices policy enable hdfs ec -enablePolicy -policy RS-6-3-1024k policy 적용 hdfs ec -se..
Hive 상에서 특정 테이블에 접근할 때 나타나는 에러이다. show tables; 명령어로 보면 테이블은 보이지만 해당 테이블에 대한 정보나 데이터를 확인할 경우 나타난다. hive> select * from table_name limit1; FAILED: SemanticException Unable to fetch table table_name. null hive> drop table_name; FAILED: SemanticException Unable to fetch table table_name. null Hive 메타데이터 테이블에서 관련 레코드를 삭제해야 한다. delete from table_params where tbl_id = 3611; delete from tbls where TBL_N..
Hive 쿼리 수행 중 SemanticException Unable to fetch table TableName 에러가 발생했을 때 해결 방법이다. 원인 - 이미 실행 중인 RunJar가 존재하기 때문이다. 해결 방법 - RunJar 프로세스를 조회하여 Kill [hadoop@hadoop bin]$ jps 7726 Jps 9204 RunJar 2811 JobTracker 1452 NameNode [hadoop@hadoop bin]$ kill 9204
Hive를 사용하다 보면 전달 1일 또는 전달 마지막일을 구해야 할 때가 있다. 날짜 계산 함수를 사용하여 원하는 값을 구해보자. #전월 1일 select add_months(trunc('2019-11-04', 'MM'), -1); select add_months(trunc(current_date, 'MM'), -1); select date_format(add_months(trunc(current_date, 'MM'), -1), 'yyyyMMdd'); trunc와 add_months를 통해 전월 1일을 구할 수 있다. 결과 값 format이 맞지 않다면 date_format을 통해 날짜 포멧을 변경하면 된다. #전월 마지막 일자 select last_day(add_months(trunc('2019-11-..
Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode, toggle the option in Preferences MySQL에서 Update시 발생하는 문제로 해결 방법은 안전모드를 종료해주면 된다. SET SQL_SAFE_UPDATES = 0;
- 자바
- 소프트웨어공학
- 이직
- 회고
- Eclipse
- 경력관리
- 제주도 여행
- React
- SQL
- 프로그래머
- effective java
- Tomcat
- 리눅스 명령어
- Linux 명령어
- 리액트
- Maven
- javascript
- spring
- 성능분석
- 오라클 내장 함수
- 개발환경
- 제주도 3박4일 일정
- 리액트 16
- 프로그래머스
- 자바스크립트
- 오라클
- Collection
- sort algorithm
- 정렬 알고리즘
- Java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |