전체 글

·DB Oracle
MERGE INTO STOCK S -- STOCK테이블을 업데이트할 대상으로 설정USING (SELECT GDS_CODE, BZENT_NO, QTY -- USING절을 통해 STOCK테이블과 연결할 데이터 소스 정의 FROM STOCK_PO WHERE PO_NO = #{poNo}) SPON (S.GDS_CODE = SP.GDS_CODE AND S.BZENT_NO = -- 조인 조건 (SELECT BZENT_NO FROM PO WHERE PO_NO = #{poNo}))WHEN MATCHED THEN -- 조인 조건이 일치하는 경우에 수행 UPDATE SET S.QTY = S.QTY + SP.QTYWHEN NOT MATCHED THEN -- 조인 조건이 일치하는 않는 경우에 수..
·JAVA
String str1 = "데이터1@데이터2@데이터3@데이터4";String[] arr1 = str1.split("@");String str2 = "데이터1^데이터2^데이터3^데이터4";String[] arr2 = str2.split("^");//arr1의 length > 4//arr2의 length > 1이 이유는 ^는 not이라는 의미(정규식)그러므로 이스케이프 문자를 사용해야한다String str2 = "데이터1^데이터2^데이터3^데이터4";String[] arr2 = str2.split("\\^");//arr2의 length > 4한글의 정규식[가-힣][가-힝]
·JAVA
Reader와 InputStream 차이Reader문자타입(char타입)문자를 중심으로 읽기 처리[절차] 읽기 객체 생성 -> 읽기 작업 -> 종료InputStreambyte타입인코딩에 따라 한글이 깨져보일 수 있음 String str = "한글";int len1 = str.getBytes("utf-8").length // 6 int len2 = str.getBytes("euc-kr").length // 4// 인코딩 방식에 따라 byte길이가 달라질 수 있음byte[] by = str.getBytes("utf-8");String str2 = new String(by,"euc-kr"); // 깨질 수 있음 // 디코딩할 때는 반드시 인코딩한 글자로 해야함throw와 try catchthrow오류를 떠넘기..
·DB Oracle
기본키 아이디자유 텍스트로 입력abcd12, asdfjal코드체계적인 코드dept001, dept002, a001번호숫자로 넣음1, 2, 201번호라고하여 숫자만 넣지 않음doc20240831001코드와 유사일련 번호숫자 값이 순차적으로 들어오는 값1, 2, 3문자와 조합도 가능SN202400001 -> SN202400002순번일련번호와 유사, 순번이 있지만 보통 문자열이 들어가지 않음단독으로 사용하지 않고 복합키로 사용할 때 들어감일련번호, 순번날짜일자2024-09-07VARCHAR2(8)일시2024-09-07 10:14:10DATE시각09:30시간09:00 ~ 10:30기간2024-09-07 ~ 2024-09-10기한2024-09-07까지입사일자 조건 검색하는 방법입사일자가 DATE인경우SELECT ..
·DB Oracle
문제2020년도 상품별 매입금액과 매출 금액을 구하기ANSI, Oracle방식, 서브쿼리CART_NO가 인덱스이기 때문에SUBSTR보다 LIKE가 더 빠르다ANSISELECT B.PROD_ID, SUM(B.PROD_SALE*A.CART_QTY), SUM(B.PROD_COST*C.BUY_QTY)FROM PROD BLEFT OUTER JOIN CART A ON A.CART_PROD = B.PROD_ID AND A.CART_NO LIKE '2020%'LEFT OUTER JOIN BUYPROD C ON B.PROD_ID=C.BUY_PROD AND EXTRACT(YEAR FROM BUY_DATE)='2020'GROUP BY B.PROD_ID;순서 : ON조건에 해당하는 데이터를 필터링(2020년인 CART..
·Spring
참고한 게시글파일 업로드 시이미 저장된 파일은 그대로 두고 새로 추가되는 형식으로 바꾸고 싶어 찾아본 결과 시도한 방법이다이미 저장된 파일을 따로 저장하는 변수인let selectedFiles = [];를 먼저 선언 후 file이 들어올 때 onchage를 통해서 파일 배열이 기존의 selectedFiles에 합치도록 했다(concat)file추가// 파일이 선택될 때 호출되는 함수function concatFile(files) { // FileList를 배열로 변환 let fileArr = Array.from(files); // 기존의 selectedFiles 배열에 새로운 파일 추가 selectedFiles = selectedFiles.concat(fileArr); // 파..
아잠만_
공부하는 오리