🐯 [DB] ERROR: syntax error at or near "$1" mybatis사용중인데 종종 나던 에러인데 참고 : 현재 개발 환경 스프링 부트 / postgresql 14 / mybatis insert를 하면 해당 에러는 종종 만나게 되는데 이번 경우에는 foreach문이 문제였다 INSERT INTO /* Mapper.xml : insert */ table.my_table ( id, name, address ) VALUES ( #{item.id} , #{item.name} , #{item.address} ) 위에는 Insert문인데, mybatis에서는 만일 insert를 여러개해야하는경우 ( 배열로 들어오는 경우 ) values에 foreach문을 걸어서 insert를 할 수 있게 되어..

각 배열의 n번째값이 group인 경우의 index를 찾는 법 나는 0번째 값이 group인 것으려고 아래처럼 만들었는데, 원하는 값을 확인해서 하면 될 듯 하다. 만약 -1이 반환된다면 없다는 것 let field = [ ['apple', 'red'], ['banana', 'yellow'], ['grape', 'purple'] ]; let group = 'banana'; let index = field.findIndex(item => item[0] === group); console.log(index); // 결과: 1 this.array 배열에서 name 속성이 'nacho'인 요소를 찾는다. 만약 해당 요소를 찾으면 그 요소를 value 변수에 저장하고, 찾지 못하면 undefined가 저장 let..

🩵postgresql 설치하기 만일 intelli에서 연결하는 법이 궁금하다면 가장 하단에 있음 >> postgresql 설치, 세팅 후에 연결 가능함 https://www.postgresql.org/ PostgreSQL The world's most advanced open source database. www.postgresql.org 처음 웹페이지 들어가고 나서 번역을 눌러놨더니 계속 페이지가 한글이다. 1. 다운로드 클릭 2. 빨간 색 부분 클릭 2번 사진 클릭하면 버전들이 나옴 3. 16.1 클릭하면 페이지 이동하면서 자동으로 다운 받아짐 >> 16.1 받은 이유 :: 찾아보니깐 릴리즈 버전 + 최신 버전인 것 같아서 받음 사실 설치 과정은..

🩷case when end 용법은 case when 조건 else 조건이 맞지 않는 경우 end는 CASE 문의 끝을 나타냄 이런식으로 사용하면 되고 아래는 예시! CASE WHEN a.column != b.column THEN '[코드] ' || b.title ELSE b.title END as title 위에서 보면 ||가 있는데 이건 [코드] 뒤에 b.title이 붙는다는 말이다 b.title이 '티스토리'라면 반환되는 값은 '[코드] 티스토리'가 될 것 🩷]]> 문자열 ]]>은 XML 문서에서 CDATA 섹션을 나타냅니다. CDATA 섹션은 XML 문서에서 특수 문자나 마크업을 해석하지 않고 원본 그대로 포함하려고 할 때 사용된다하는데, AND a.컬럼 ]]> '컬럼코드' SQL 조건 a.컬럼 ]..

📣" WITH RECURSIVE " SQL에서 공통 표현식 (Common Table Expression, CTE)을 사용하여 재귀적 쿼리를 작성하는 데 사용되는 문법 이라고 하는데 나는 처음봤다. 그래서 정리를 하고자 한다. 🔸어떤 경우에 사용되는가? - 타고 타고 올라가는 경우 사용 (계층) - 트리 형태의 데이터 이를 테면, a의 상위 부서가 b고 b의 상위 부서가 c인 경우가 있는데 이런걸 찾기 위해서 사용하면 좋다. 🔸어떻게 사용하는가? WITH RECURSIVE 쿼리문을 작성하고 내부에 UNION을 통해 재귀를 구성한다. 반복문처럼 사용하기! WITH RECURSIVE cte_name (column1, column2, ...) AS ( -- Initial query (초기 쿼리) SELECT c..

🔷 COALESCE SQL에서 사용되는 함수로, 여러 인자 중에서 첫 번째로 NULL이 아닌 값을 반환 주의사항 : 인자로 전달하는 값들의 데이터 타입이 일치해야 함 사용법 COALESCE(a컬럼, b컬럼) COALESCE(NULLIF(a 컬럼, ''), b 컬럼) SELECT name, (CASE WHEN department = 'HR' THEN 'Yes' ELSE 'No' END) AS is_hr_department FROM employees; 첫 번째 a컬럼이 null인 경우 b컬럼의 값으로 나오게 하는 것이고, 두 번째는 nullif문법을 사용하여 a 컬럼이 ''인 경우, b컬럼의 값으로 나오게 하는 것 세 번째는 coalesce는 아니지만, 조건을 걸어서 사용할 수 있다!

🔷 PostgreSQL에서 배열을 풀어서 각 요소를 행으로 만드는 함수 unnest 컬럼에 여러값이 들어가있는 경우, 어떻게 SQL로 뽑아낼 것인가? 이게 자바스크립트 등으로 하면 그냥 결과값 가져와서 ,로 자르고 배열에 집어넣고 돌리면서 하면 편한데 SQL로 하려고 하니 어려웠다. 상황 설명 : A테이블에는 질문에 대한 답이 들어있다. [객관식 복수선택 가능] B테이블에는 실제로 대답한 답이 들어있다. answers에 있는 답을 A테이블에서 가져와야 했다. A테이블 idx q_num [ int 타입 ] q_name 1 151 151번에 대한 답변 1 152 152번에 대한 답변 1 153 153번에 대한 답변 1 154 154번에 대한 답변 B테이블 idx answers [ varchar 타입 ] 1 ..

이번에 쿼리를 짜면서 두 쿼리를 합치는 중에 union union all을 사용해봤다. 사실 별거 없긴 한데, union / union all은 쿼리의 데이터를 합쳐야 하거나 중복을 제거해서 테이터를 합칠 때 사용한다. * 컬럼의 개수와 데이터 타입이 일치해야 함 union은 중복을 제거하고 합쳐주고 union all은 중복된 데이터까지 합쳐줌 select * from tableA where 조건 union / union all select * from tableB where 조건 이런식으로 사용하면 된다!
- Total
- Today
- Yesterday
- ReflectionTestUtils
- 구글스프레드시트
- vue라이프사이클
- 파일전송프로토콜
- nextTick
- APP SCRIPT
- PathVariable
- 서버포트설정
- 부트스트랩
- SCP 명령어
- How to generate an uuid in google sheet?
- 개발자질문
- invokeMethod
- uuid
- 와이어샤크문법
- computed
- 패킷캡쳐하는법
- vue.js
- 프론트엔드 #
- 고유식별자
- 파라미터받는법
- pcap저장
- 스프링프레임워크
- selectOption
- 개발자면접질문
- 리눅스
- selectpicker
- springMVC #DTO #VO #DAO
- centos7
- 로컬에서서버
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |