본문 바로가기
728x90

분류 전체보기47

날짜형 함수 - EXTRACT, 날짜형 연산 - EXTRACT (YEAR, MONTH, DAY)SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD') AS YYYYMMDD , EXTRACT(YEAR FROM SYSDATE) YEAR , EXTRACT (MONTH FROM SYSDATE) MONTH , EXTRACT (DAY FROM SYSDATE) DAY , TO_NUMBER(TO_CHAR(SYSDATE, 'YYYY')) YEAR2 , TO_NUMBER(TO_CHAR(SYSDATE, 'MM')) MONTH2 , TO_NUMBER(TO_CHAR(SYSDATE, 'DD')) DAY2 FROM DUAL;EXTRACT 함수를 사용하면 리턴 타입이 숫자형이다.EXTRACT로 동일한 결과를 얻으려면 TO_N.. 2024. 12. 12.
숫자형 함수 - CEIL, FLOOR, ROUND, TRUNC - CEIL : 정수 올림- FLOOR : 정수 내림SELECT CEIL(123.22) , FLOOR(123.11) , CEIL(-123.22) , FLOOR(-123.11) FROM DUAL;  - ROUND : 반올림SELECT ROUND(123.123, 0) , ROUND(-123.123, 0) , ROUND(123.123, 2) , ROUND(-123.123, 2) , ROUND(123.123, -2) , ROUND(-123.123, -2) , ROUND(163.123, -2) , ROUND(-163.123, -2) FROM DUAL;음수는 절대값에 반올림 후 마이너스.- TRUNC : 버림SELECT .. 2024. 12. 12.
문자형 함수 - LTRIM, RTRIM, TRIM SELECT 'ZZXXXYYXXZZ' , LTRIM('ZZXXXYYXXZZ', 'ZX') AS LTRIM , RTRIM('ZZXXXYYXXZZ', 'XZ') AS RTRIM , TRIM(LEADING 'Z' FROM 'ZZXXXYYXXZZ' ) AS LEADING , TRIM(TRAILING 'Z' FROM 'ZZXXXYYXXZZ' ) AS TRAILING , TRIM('Z' FROM 'ZZXXXYYXXZZ') AS BOTHFROM DUALLTRIM, RTRIM 은 문자열에 지정문자(default : 공백)가 해당되면 제거>>> 지정문자 하나하나씩 매칭하는데 하나라도 매칭되면 제거, 안되면 STOP TRIM 은 지정문자 1개 에 대해 앞뒤로 매칭되면 제거, 안되면 STOP 2024. 12. 11.
DATE 추출은 EXTRACT 프로그래머스 문제 풀이 EXTRACT(MONTH FROM SALES_DATE) AS MONTH 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.krLTRIM으로 MONTH의 0을 제거  (01 > 1, 02 > 2 ...) >>> 결과는 같은데 정답 틀림..SELECT YEAR, MONTH, GENDER, COUNT(USER_ID) AS USERSFROM ( SELECT DISTINCT TO_CHAR(A.SALES_DATE, 'YYYY') AS YEAR , LTRIM(TO_CHAR(A.SALES_DATE, 'MM'), '0') AS MONTH , A.USER_ID , B.GENDER .. 2024. 12. 11.
UNION, UNION ALL 비교 oracle 19c - UNION중복을 제거하기 위해 오름차순으로 정렬한다. (JOB, MGR 기준으로 오름차순 정렬)- UNION ALLUNION ALL은 중복 제거를 하지 않기 때문에 정렬하지 않는다. 2024. 12. 10.
데이터 모델 - 트랜잭션 표현 2024. 11. 27.
상호배타적 관계 2024. 11. 26.
데이터 모델 - 반정규화 2024. 11. 23.
데이터 모델 - 정규화 2024. 11. 22.
데이터 모델링 - 식별자 2024. 11. 21.
데이터 모델링 - 관계 2024. 11. 20.
데이터 모델 - 속성 2024. 11. 19.
데이터 모델 - 엔터티 2024. 11. 18.
데이터 모델링 계획, 분석, 설계 단계에서 업무를 분석하고 설계 할 때 / 이후 구축, 운영 단계에서 변경과 관리할 때, 위 데이터 모델링 3대 특징을 이용한다.오른쪽은 차를 예시로 들어서  비유 해보았습니다.데이터 베이스에 접근 단계에 따른 구조입니다. 2024. 11. 17.
linux 24.04 - 오라클 11g 설치 리눅스에 호한 가능한 오라클 버전https://yunamom.tistory.com/65Oracle Database 11g Express Edition은 무료로 사용 가능하며 아래와 같은 제한 사항이 있습니다.데이터 베이스 저장공간 제한 : 11GB메인 메모리 사용 제한 : 1GBCPU 사용 제한 : 1개 (Single CPU)https://www.oracle.com/database/technologies/xe-prior-release-downloads.html우분투 서버에 드래그로 Disk1폴더 이동 시키기apt update .. 메뉴판 업데이트 하기sudo apt updatesudo apt upgrade # 이거는 무슨 명령어지..apt-cache search alien | grep alien  sud.. 2024. 6. 22.
AWS 설정 - 가상메모리 할당하기 메모리 용량과 디스크 사용량 확인하기# 메모리 용량 & 사용량 확인free -m  Swap 영역이 0임# 디스크 사용량 확인df리눅스는 /dev/root 가 기본 파일 시스템으로 본인의 서버는 27187396블럭이 사용가능 (28Gb)스왑 영역 만들기aws 가상메모리 할당 용량은 2G스왑 파일의 크기 : bs (블록 크기) * count (블록 수)dd 명령어로 루트 파일 시스템에 스왑 파일을 생성합니다.지정한 블록 크기는 인스턴스의 사용 가능한 메모리보다 작아야 합니다. 그렇지 않으면 "memory exhausted" 오류가 발생합니다.sudo dd if=/dev/zero of=/swapfile bs=1M count=20482. 스왑 파일의 읽기 및 쓰기 권한을 업데이트합니다.sudo chmod 600.. 2024. 6. 22.
리눅스 linux 명령어 3 - 권한 관리 메타코딩님의 유튜브 강의를 보면서 권한 관리 내용을 정리했습니다. 목차 📑 su와 sudo 파일 권한 조회 파일 권한 변경 파일 소유 그룹 변경 su와 sudo linux의 최고 권한자는 root입니다. su명령어로 최고 권한자을 획득해보겠습니다. su (Switch User) 현 사용자를 로그아웃하지 않고, 다른 사용자의 권한을 획득할 때 사용합니다. su 뒤에 변경할 사용자 Id를 입력하지 않는다면, su root와 동일하게 돟작합니다. su root 그전에 root의 패스워드를 지정 해야합니다. sudo 명령어로 비밀번호를 설정하겠습니다. sudo (SuperUser DO) 슈퍼 유저로 무언가를 수행한다는 의미입니다. 현재 계정에서 단순히 root의 권한만을 빌리는 것입니다. sudo passwd .. 2023. 12. 26.
AWS 설정 - EC2 생성 메타코딩님의 유튜브 강의를 보면서 AWS EC2서버 생성 강의 내용을 정리해보겠습니다. 목차 📑 AWS 로그인, 지역 설정 EC2 인스턴스 시작 MobaXterm으로 EC2 접속 AWS 로그인, 지역 설정 로그인 페이지로 가서 로그인을 해줍니다. 그리고 오른쪽 상단에 있는 지역 설정을 아시아 태평양 (서울)으로 변경해 주겠습니다. EC2 인스턴스 시작 왼쪽 상단에 검색을 통해 EC2 메뉴로 이동하겠습니다. EC2 메뉴로 이동하여 인스턴스 시작 버튼을 눌러 EC2 생성을 진행 해보겠습니다. 1. 이름 및 태그 지정 springboot server로 사용할 거라 이름을 spring-boot로 해주겠습니다. 2. OS 선택 유튜브 강의대로 프리티어로 사용 가능한 우분투 20.04 버전으로 진행 하겠습니다. 3.. 2023. 12. 26.
리눅스 linux 명령어 2 - vi 에디터 메타코딩님의 유튜브 강의를 보면서 리눅스 vi 에디터 내용을 정리했습니다. 목차 📑 일반 모드 입력 모드 명령행 모드 일반 모드 vi 으로 처음 에디터로 진입한 경우 일반모드가 됩니다. 단축키로 에디터를 수정할 수 있습니다. 그러면 자주 사용하는 단축키를 알아보겠습니다. 마우스 우클릭 : 붙여넣기 shift+v: 블럭지정 dd: 현재 행 삭제 yy: 현재 행 복사 y 복사 p: 붙여넣기 u: undo 기능 (window ctrl + z와 같은 기능) ctrl + r: redo 기능 (window ctrl + y와 같은 기능) home: 행의 맨 처음으로 이동 $: 행의 맨 끝으로 이동 ctrl + b: 위로 한 화면 스크롤 ctrl + f: 아래로 한 화면 스크롤 shift+v: 블럭지정 + y 복사 +.. 2023. 12. 26.
리눅스 linux 명령어 1 - 조회, 생성, 삭제 메타코딩님의 유튜브 강의를 보면서 리눅스 명령어 강의 내용을 정리했습니다 목차 📑 경로 이동 파일 조회 파일/폴더 생성 파일/폴더 삭제 파일명 수정 바로가기 만들기 경로 이동 clear # 클리어 pwd # 현재경로 조회 cd .. # 상위 경로 이동 cd / # 최상위 경로로 이동 (절대경로로 이동) 파일 조회 ls # 파일 조회 ls -l # 파일 자세히 조회 -로 시작하면 파일 d로 시작하면 폴더 ls -al # 숨긴 파일까지 모두 조회 ls --help # ls 명령어 옵션 조회 파일/폴더 생성 touch a.txt # 파일 생성 cp a.txt b.txt # 파일 a.txt를 b.txt로 복사 mkdir user # 폴더 생성 mv a.txt user/c.txt # 파일 이동 + 파일명 변경 파.. 2023. 12. 26.
22장 this - 바인딩 call, apply, bind 일반 함수와 콜백 함수에서 this에 대해 알아보겠습니다. Function.prototype.call, apply, bind 로 콜백함수에 this를 바인딩해보겠습니다. 목차 📑 콜백 함수의 this 소개 this 바인딩 하기 Function.prototype call, apply 차이 Function.prototype bind 콜백함수의 this 소개 콜백 함수가 일반 함수로 호출된다면 콜백 함수 내부의 this에도 전역 객체가 바인딩됩니다. 어떠한 함수라도 일반 함수로 호출되면 this에 전역 객체가 바인딩됩니다. var value = 1; const obj = { value: 100, foo() { console.log('foo this: ', this); // { value: 100, foo: f.. 2023. 12. 13.
25장 클래스 - 클래스 정의, 클래스와 생성자 함수 비교 클래스와 생성자 함수의 차이에 대해 알아 보겠습니다. 목차 📑 클래스 정의 클래스와 생성자 함수의 차이 클래스 정의 // 클래스 선언문 class Person { // 생성자 constructor(name){ // 인스턴스 생성 및 초기화 this.name = name; // pulic } // 프로토타입 메서드 sayHi(){ console.log(`Hi! My name is ${this.name}`); } // 정적 메서드 static sayHello() { console.log('Hello!'); } } // 인스턴스 생성 const me = new Person('Jeon'); // 인스턴스의 프로퍼티 참조 console.log(me.name); // 프로토타입의 메서드 호출 me.sayHi(); .. 2023. 12. 7.
19장 프로토타입 - __proto__와 prototype __proto__와 prototype에 대해 알아 보겠습니다. 목차 📑 __proto__ 소개 prototype 소개 __proto__ 소개 __proto__ 모든 객체는 __proto__ 접근자 프로퍼티를 통해 자신의 프로토타입에 간접적으로 접근할 수 있습니다. __proto__는 접근자 프로퍼티 입니다. __proto__ 접근자 프로퍼티는 객체가 직접 소유하는 프로퍼티가 아니라 Object.prototype의 프로퍼티입니다. 모든 객체는 상속을 통해 Object.prototype.__propto__ 접근자 프로퍼티를 사용할 수 있습니다. const person = { name : 'jeon'} // person 객체는 __proto__ 프로퍼티를 소유하지 않습니다. // person.__proto__.. 2023. 12. 5.
19장 프로토타입 - 생성자 함수 인스턴스 생성시, 불필요한 중복을 프로토타입으로 제거하고, 오버라이딩과 프로퍼티 새도잉에 대해 알아 보겠습니다. 목차 📑 생성자 함수의 프로토타입 생성자 함수로 인스턴스 생성 인스턴스 오버라이딩과 프로퍼티 섀도잉 생성자 함수의 프로토타입 function Circle(r){ this.r = r; this.getArea = function () { return Math.PI * this.r ** 2; } } const circle1 = new Circle(1); const circle2 = new Circle(2); console.log(circle1.getArea === circle2.getArea) // false 인스턴스를 생성할 때마다 메서드를 중복 생성하고 모든 인스턴스가 중복 소유합니다. 모든 인.. 2023. 11. 30.
19장 프로토타입 - hasOwnProperty, Object.create Object의 property가 있는지 확인하기 위해 .hasOwnProperty()를 사용합니다. Eslint를 사용하면 밑줄이 그어지는데, 그 원인을 알아 보겠습니다. 그리고 대안도 함께 알아 보겠습니다. 목차 📑 Object.create() 란? 해결방법1 해결방법2 Object.create() 란? Object를 생성할 때, prototype을 인자로 받아 객체를 생성해주는 함수입니다. 즉 객체를 생성하면서 직접적으로 상속을 구현하는 것입니다. 장점은 new 연산자 없이도 객체를 생성할 수 있습니다. 프로토타입을 지정하면서 객체를 생성할 수 있습니다. 객체 리터럴에 의해 생성된 객체도 상속받을 수 있습니다. obj.hasOwnProperty() 사용시 문제점 const obj1 = { a : 1 .. 2023. 11. 28.
21장 빌트인 전역 함수 - encodeURI, decodeURI, encodeURIComponent, decodeComponent 빌트인 전역 함수 중 encodeURI/encodeURIComponent의 차이를 알아보고, URI와 그 하위개념인 URL과 URN을 살펴보겠습니다. 목차 📑 URI 소개 인코딩이란? encodeURI/decodeURI 소개 encodeURI/decodeURI 사용해보기 encodeURIComponent/decodeURIComponent 소개 encodeURIComponent/decodeURIComponent 사용해보기 URI 소개 URI는 인터넷에 있는 자원을 나타내는 유일한 주소를 말합니다. URI의 하위 개념으로 URL, URN이 있습니다. URL이 URI의 하위 개념인데 https:// 부터 #Intro까지 동일하게 보는 것 같습니다. 인코딩이란? 인코딩이란 URI의 문자들을 이스케이프 처리하는 .. 2023. 11. 24.
단축 평가, 옵셔널 체이닝, 함수 인자 초기화 목차 📑 연산자 개요 || OR 연산자 && AND 연산자 ?? null 병합 연산자 ?. 옵셔널 체이닝 연산자 function (a = ‘test’) function(인자) 초기화 || ( OR 연산자 ) 왼쪽이 falsly 값이면 오른쪽 값을 취합니다. const or1 = "Dog" || "Cat"; // 'Dog' const or2 = "" || "Cat"; // 'Cat' const or3 = "Dog" || ""; // 'Dog' && ( AND 연산자 ) 왼쪽이 falsly 값이면 왼쪽 값을 취합니다. const and1 = "Dog" && "Cat"; // 'Cat' const and2 = "" && "Cat"; // '' const and3 = "Cat" && ""; // '' ?? ( .. 2023. 11. 20.
lodash Array, Collection, Object 메서드 모음 목차 📑 lodash 정리 lodash 정리 Array, Collection, Object 별 메서드를 정리하겠습니다. initial Array Collection Object a ---------- --------- _.assign _.assignIn _.assignInWith _.assignWith _.at b ---------- --------- --------- c _.chunk _.compact _concat _.countBy _.create d _.difference _.differenceBy _.differenceWith _.drop _.dropRight _.dropRightWhile _.dropWhile --------- _.defaults _.defaultsDeep e ----------.. 2023. 11. 8.
깃 설치하기 - 자격증명 목차 📑 git 소개 git 설치하기 git 설치 소개 깃을 설치 할 때 Next만 연타해도 되지만 window 자격증명을 사용하는 옵션만 선택해서 설치를 진행하겠습니다. 깃 다운로드 사이트 git 설치하기 로컬에서 git init할 때, 브랜치명을 변경할 수 있습니다. 저는 default 옵션인 master로 생성되도록 두겠습니다. window 자격증명을 사용 체크 간혹 사내에서 OpenSSL이 막혀있는 경우, Use the OpenSSL library로 설치가 되어 있으면 설치 이후에 아래 설정을 추가 해야합니다. 그래야 SSL확인을 건너 띄고 인증을 진행합니다. git config --global http.sslVerify false Use the native Window Secure Channel.. 2023. 11. 7.
lodash Array 메서드 a to z - ( return Array ) 목차 📑 lodash Array 메서드 소개 lodash Array 메서드 a to z lodash Array 메서드 소개 Lodash Array 메서드를 한번씩 사용해보겠습니다. lodash 공식 홈페이지 lodash 연습장 lodash Array 메서드 a to z c _.chunk(array, [size=1]) 원본 배열을 size만큼 잘라 새로운 배열을 반환합니다. Creates an array of elements split into groups the length of size. If array can’t be split evenly, the final chunk will be the remaining elements. const chunk1 = _.chunk(["a", "b", "c", "d.. 2023. 10. 31.
728x90