전체 글(215)
-
SQLite3 - DB 생성하기
쿼리연습하는데 기왕이면 Oracle 이면 좋겠으나 Docker 로 배포되는 오라클도 있고 MySQL, Maria DB, ... 다양한 오픈소스 DB 가 존재하는데 설치하기도 귀찮고 SQLite 가 최소한의 기능을 지원하니까 만사가 귀찮은 사람에겐 SQLite 를 쓰는 것도 대안이 되리라! 이야~ 단순하다. $ sqlite3 데이터베이스명 DBeaver 에서 조인연습하려고 구한 Chinook.db 가 있지만 Employee 테이블명이 겹쳐서 새 DB는 어떻게 만들어야 하는지 궁금했는데 커맨드 한 개로 바로 해결된다. 쉬워서 좋네. 나중에 안드로이드 앱 개발할 때 써먹으면 되니까. 참고한 사이트 : SQLite In 5 Minutes Or Less Below is a simple TCL program tha..
2023.11.21 -
[SQL] - ORDER BY
ORDER BY 로 쿼리결과를 정렬하려고 할 때, 컬럼값에 따라 우선순위를 정해야 할 경우, CASE 문을 쓰면 된다. SELECT SUBJECT, ... FROM ( SELECT '컴공' AS SUBJECT, ... union SELECT '소프트웨어공' AS SUBJECT, ... union SELECT '전자공' AS SUBJECT, ... ) A ORDER BY CASE WHEN A.SUBJECT = '컴공' THEN 1 WHEN A.SUBJECT = '소프트웨어공' THEN 2 WHEN A.SUBJECT = '전자공' THEN 3 END ASC
2023.11.20 -
[JQuery] selector 한꺼번에 지정하기
여러 개의 HTML 요소에 대해 동일한 이벤트를 처리하려고 할 때 이렇게 쓰면 된다. $('selector1, selecotr2, selectorN').on('이벤트', function(arg){}); --- $('#id-one').on('이벤트', function(arg){}); $('#id-two').on('이벤트', function(arg){}); $('#id-three').on('이벤트', function(arg){}); --- // 소스 코드량도 줄이고 $('#id-one, #id-two, #id-three').on('이벤트', function(arg){});
2023.11.20 -
JS 에서 소수점 반올림 처리하기
SQL 에서는 ROUND(소수값, 유지할 자릿수) 만으로 소숫점 몇 째자리까지 유지할 수 있다. [ SQLITE 기준 ] SELECT ROUND(12345.67890) AS ROUNDING; -> 12345 SELECT ROUND(12345.67890, 2) AS SOSU; -> 12345.68 하지만 자바스크립트에서는 ROUND 함수로 소수점 자리유지를 할 수 없다. 항상 반올림된 정수로 된 결과로 나온다. Math.round(12345.67890) -> 12346 Math.round(12345.67890, 2) -> 12346 소수점 자리를 유지하려면 Math.round(소수값 * 10^N) / 10^N 으로 처리하면 된다. 소수점 둘째 자리이면 10의 제곱인 100 을 쓰면 된다. Math.roun..
2023.11.20 -
그리드 - Tabulator 엑셀 형식으로 다운로드하기
Tabulator 에서 현재 그리드의 데이터를 XLSX 형식으로 다운로드하는 API 는 다음과 같다. let tableObj = new Tabulator(...); function downloadXLS() { tableObj.download("xlsx", "파일명.xlsx"); } 기본 설정에서 Tabulator 에서는 통데이터를 그대로 출력해버리기 때문에 레코드가 1000 개를 넘어가면 다운로드 시간도 지연되며 더욱이 그많은 데이터를 다 받아야 하나 싶을 정도로 부담스러워진다. 다행히 이것을 해결하는 방법 중의 하나로 범위를 지정해서 다운로드할 수 있다. 현재 검색으로 찾아낸 방법인데 현재 선택된 행만 다운로드하는 것이다. 그런데 여기서 또 한 가지 문제점이 존재한다. selected 를 써서 현재 선..
2023.11.03 -
MYBATIS - INSERT list
SQL 원형 : INSERT INTO STUDENT (STD_SEQ, STD_NAME, DEPT) VALUES (001, '영호', '수학과'), (002, '영수', '물리학과'), (003, '변식', '컴퓨터공학과'), . . . INSERT 의 경우, VALUES 뒤에 따라오는 (속성값) 레코드가 연속으로 나열하는 방식이기 때문에 VALUES 뒤에 를 넣는다. separator (구분자)는 ',' 임을 명심하기 바란다. INSERT INTO STUDENT_TBL (ID, NAME) VALUES (#{element.id}, #{element.name})
2023.11.03