분류 전체보기
-
[Oracle] MySQL과 Oracle 테이블 JOIN 걸어서 UPDATE하는 방법DataBase/Oracle 2018. 9. 23. 16:23
MySQL은 쿼리 짜기가 Oracle에 비해서 문법이 자유로운 편인 것 같다. MySQL에서는 테이블 join을 걸어서 update를 하는 방법이 참 쉬워보이는데, Oracle은 요래조래 칠게 많았다 ㅠ_ㅠ 두 DB를 비교하면서 설명해보겠다. 먼저, MySQL. 123456789/*MYSQL에서 JOIN된 테이블 UPDATE */ UPDATE chocolate_table chocolateINNER JOIN milk_table milk -- 조인할 테이블 ON chocolate.common_seq = milk.common_seq SET chocolate.brand_name = 'delicious choco' WHERE chocolate.company_name = 'zorba' AND milk.expire_..
-
괜찮은 개발자란 누구일까.개발 일기장/개발 일상 2018. 9. 23. 00:36
페이스북이나 기술 블로그를 돌아다니다보면 요즘 개발자 구하기가 참 힘들다 라는 글을 자주 보곤 한다. 물론 구직하는 개발자는 많겠지만, 그들이 만족할만한 개발자가 없다는 뜻이겠지. 프로그래밍 교육 과정 당시 알았던 분들도 아직 구직 중인 분들이 많으니까 말이다. 괜찮은 개발자가 되려면 어떻게 해야할까. 많은 시니어 개발자분들이 이렇게 해야한다 저렇게 해야한다는 여기저기 주워 들어서 알지만, 지식의 습득은 온전히 내 몫이다. 지금 내 위치에서 무엇을 해야할까 걱정이 많다. 현재 회사에 있으면 안정적이고 적지 않은 연봉을 받을테지만, 앞으로 나의 성장은 불확실하다. 초반 반년은 개발도 하고, 서버 배포도 해보고, 쿼리도 짜보고 즐거웠지만, 그 후 반년동안 회사의 큰 패키지 프로그램의 쿼리 변환을 오직 3명의..
-
[Oracle] SQL문으로 중복 데이터 삭제하기DataBase/Oracle 2018. 9. 21. 11:49
오라클에서 기존 테이블에 pk를 설정해주고 싶은데 중복 데이터가 있을 경우, violate가 뜬다. 중복 데이터를 없애야 pk 생성이 가능해진다. 금방 방법을 찾을 수 있었고, 종종 써야할 거 같아 출처를 밝히고 정리!(혹시 나중에 블로그를 없애시면 글도 사라지니까) 총 방법이 3가지가 있었는데, 첫 번째, 12345678910111213DELETE FROM chocolate_table(테이블명) WHERE ROWID IN ( SELECT ROWID FROM ( SELECT * FROM ( SELECT ROW_NUMBER() OVER(PARTITION BY 컬럼명 ORDER BY 컬럼명) AS num FROM chocolate_table(같은 테이블 명) ) WHERE num > 1 -- num의 값이 ..
-
DTO(혹은 VO)를 상속 받아서 사용할 경우 주의할 점!프로그래밍 언어/자바 & 코틀린 2018. 9. 18. 20:48
오늘 업무에서 배운 점은 DTO(혹은 VO)를 사용할 때이다. * 여기서 DTO는 Data Transfer Object(데이터 전송 객체), VO는 Value Object(값 객체)를 의미하는데, 둘 다 프로세스 간에 데이터를 전달하는 객체로 이해하면 된다. 단, VO는 Read Only라는 차이점이 있다. DTO간에 상속을 받아서 부모 DTO의 객체도 함께 쓰려고 할 때 주의할 점을 배웠다. DTO 형태로 파라미터를 던지는데, XML쪽에서 에러를 계속해서 뱉었다. 로그에서 parameterType은 DTO형태인데 HashMap이 넘어온다고 말했다. 우리 본부는 DAO에서 공통된 클래스에서 sqlSession을 맺고 끊으면서 DML(select, update, insert, delete)을 위한 메서드를..
-
ORA-00932: 일관성 없는 데이터 유형: -이(가) 필요하지만 CLOB임 - 에러 해결DataBase/Oracle 2018. 9. 13. 11:40
12SELECT DISTINCT SOME_SEQ(NUMBER형 컬럼), SOME_CLOB(CLOB형 컬럼) FROM DEMO_TABLEColored by Color Scriptercs 이와 유사하게 DISTINCT 기능을 사용하려다 발생한 에러. DISTINCT를 사용할 때 CLOB형 컬럼이 있으면 원하는 기능이 실행되지 않는다. DISTINCT를 사용하고 싶다면 CLOB형 컬럼은 제외하고 사용해야 한다. 방법은 스택오버플로우를 참고했다. click 1234567SELECT a.* , b.SOME_CLOB FROM (SELECT DISTINCT SOME_SEQ FROM DEMO_TABLE) aINNER JOIN DEMO_TABLE b ON a.pk = b.pk Colored by Color Scripte..
-
구름테스트 버그 리포팅한 이야기개발 일기장/개발 일상 2018. 9. 8. 17:08
심심해서 구름 테스트 데모판 풀어보다가 위의 문제 답이 C라고 생각해서 C라고 찍었는데, 틀렸다고 표시됐다. 답이 궁금해서 구글링을 하다보니 내 답이 맞는 것 같았다. (C를 해본적이 없어서 선언법은 모르지만, java 생각하면서 지레짐작 해보았다.) 그럼 답이 뭘까 하고 다시 재로그인 3번을 더 반복해서 A,B,D 다 찍어보았는데 다 틀렸다네? 그래서 버그가 아닌가 라는 생각에 관리자에게 리포팅을 해보았다. 그렇게 기다려보니 답이 왔다.(답장을 이렇게 친절히 보내주실 줄 몰랐다! 구름테스트 친절해요~) 흠 별거 아니지만, 초급자인 내가 이런 버그를 찾아서 리포팅하고 프로그램이 개선됐다는 것만으로도 혼자 뿌듯해했다. ㅎㅎㅎ
-
java 활용해서 '시간 복잡도' 정리하기!!(개념+코드)웹 개발/웹&프로그래밍 2018. 9. 8. 16:20
비전공자 신입으로서 일반적인 컴퓨터 공학과 학생만큼의 자료구조라도 공부해야지라는 마음으로 알고리즘에 중심을 두고 공부하고 있다. 알고리즘하면 자주 나오는 시간 복잡도! '그래서 시간 복잡도란 무엇인가?'라는 생각으로 출발해서 내가 공부도 하면서 블로그에 정리하려고 한다. 혹시 이 포스팅을 보고 피드백을 해주시는 분이 계셨으면 좋겠다!! 일단 개념적으로, '시간 복잡도'란 문제를 해결하는데 걸리는 시간과 입력의 함수 가리킨다. 컴퓨터 과학에서 알고리즘의 시간 복잡도는 입력을 나타내는 문자열 길이의 함수로서 작동하는 알고리즘을 취해 시간을 정량화하는 것이다.(출처: 위키백과) 이런 시간 복잡도를 표현 하는 방식으로 Big-0 표기법을 사용한다.(코드는 java로 설명) 1. O(1) - 상수 시간: 입력값 ..