본문 바로가기
반응형

학습/DB46

CDATA란? CDATA란? CDATA는 Character Data(문자 데이터)의 약자로, 마크업 언어(XML)에서 데이터를 표시하기 위한 것입니다. 특수문자들을 태그가 아니라 데이터로 명시하고 싶을 때 사용합니다. 보통 XML 파일에서 쿼리 짤 때 많이 사용합니다. 이미 정의된 &lt, &gt, &amp 등을 사용할 수도 있지만 가독성을 너무나 해치기 때문에 CDATA를 이용하는 것이 가독성에도 훨씬 좋습니다. 사용법 1. CDATA 영역은 다음 순서로 시작합니다. 예시 CDATA 사이에 포함된 모든 문자는 문자 그대로 해석됩니다 만약 아래와 같은 문자열을 나타내고 싶다면? 중요점 : , / 와 같은 문자 데이터를 별도로 처리해야 합니다. //출력.. 2021. 8. 27.
oracle ROWNUM & ROW_NUMBER 페이징을 구현할 때, ORACLE을 사용하면 ROWNUM을 사용한다. 어떤 방식으로 문서에 소개하고 있는지 궁금했고 나아가 관련 함수인 ROW_NUMBER도 궁금하여 같이 조사하게 되었다. ROWNUM이란? ROWNUM을 사용하면, 각각의 row에 순서대로 값을 부여한 새로운 칼럼이 생성된다. ( 1, 2, 3 ... ) 또한, 쿼리로 리턴된 row의 갯수를 제한할 때도 사용이 가능하다. SELECT * FROM employees WHERE ROWNUM < 11; 만약에 ORDER BY를 서브쿼리에 사용하고 탑 레벨에 ROWNUM을 사용하면, ROW가 정렬된 이후에 ROWNUM 조건을 추가할 수 있다. 예를 들어, 다음 쿼리는 employee_id의 가장 작은 10개의 숫자를 리턴한다. 이것을 top-N.. 2021. 8. 27.
JOIN vs WHERE 차이점 회사에서 로그 정보를 약 4개의 테이블이 where조건으로 서로 연관되어 조회하고 있었습니다. 기존에는 회원들의 id를 where 조건에 걸어두면 되었지만, 새로운 기능은 비로그인 회원들의 개인정보 열람 기록도 로그에 포함하는 것이었습니다. 안타깝게도 비로그인을 하면 회원 id가 없기 때문에 해당 정보를 where에서 조건을 걸어줄 방법이 없었습니다. 따라서 where절을 모두 join으로 변경했습니다. 많은 테이블의 where조건을 join으로 변경하며 join의 매력에 대해 알아보겠습니다. 성능 이슈는 다루지 않습니다. *where where에서만 조건을 건다는 것은, from table1, table2, table3처럼 from에 테이블 정보가 모두 들어간다는 것이니다. 가장 먼저 where는 생각.. 2021. 5. 12.
WHERE절에 조건(IF문) 추가하기 개요 DB에서 SELECT을 수행할 때 WHERE에 다양한 조건을 걸어야 할 때가 있습니다. 이 때 WHERE절에 "커피의 양이 50ml, 100ml, 150ml"와 같이 "같은 칼럼이지만 다른 값이 들어와야 하는 경우"도 있고 "커피, 우유, 콜라, 사이다"와 같이 "아예 상황에 따라 다른 칼럼을 사용해야 하는 경우"도 있습니다. 제 문제는 두번째 케이스였지만 먼저 첫번째 경우도 알아보겠습니다. 조건에 따라 결과 출력하기 첫번째의 경우는 CASE WHEN THEN으로 해결이 가능합니다. 그런데 해당 기능을 쓰면 결과적으로 "단순히 값"만 표현할 수 있습니다. ORACLE 공식문서 예시에서 SELECT절에 CASE WHEN THEN을 사용하는 예제가 있습니다. 아래 SELECT하는 칼럼을 먼저 살펴보고,.. 2021. 5. 8.
반응형