분류 전체보기
-
SQL UPDATE (데이터 갱신하기)Database 2021. 3. 25. 15:34
RDBMS에서는 UPDATE 명령을 사용하여 데이터를 갱신할 수 있다. UPDATE 명령은 셀 단위로 데이터를 갱신 할 수 있으며 WHERE 구로 조건을 지정하여 일치하는 행에 대해 값을 갱신할 수 있다. (DELETE와 마찬가지로 WHERE 구를 생략할 경우 테이블의 모든 행이 갱신된다!) (당연히 자료형에 맞는 값을 입력해야 한다.) UPDATE 데이터 갱신하기 UPDATE products(테이블명) SET 열명 WHERE 조건식; update products set discount_id=1 where id=75; UPDATE로 NULL 갱신하기 UPDATE products SET discount_id=NULL; 아래와 같이 NULL 값으로 갱신하는 것을 보통 NULL 초기화라 부른다. 당연히 NOT..
-
SQL DELETE(행 삭제하기)Database 2021. 3. 25. 14:10
데이터베이스는 하드디스크와 같은 저장장치에 데이터를 저장해 관리한다.따라서 저장용량에 경우 한계가 있다.(클라우드 서비스를 사용시 용량이 높아질 수록 비용이 증가하는 이유기도 하다. 물리적으로 "서버"가 필요하기 때문이다.) RDBMS에서의 데이터를 삭제해야하는 경우 행 단위 로 DELETE 명령을 수행한다.SELECT와 같이 열 단위로 지정하여 삭제 할 수는 없다. 또한, DELETE 명령 실행 후 재확인 의사를 묻지 않고 바로 적용되므로 의도치 않게 중요한 데이터를 지우지 않도록 유의해야한다.DELETE 행 삭제하기DELETE FROM genders WHERE 조건식; delete from genders where id=10;조건식을 활용하여 여러개의 (행) 데이터를 삭제할 수 있다.delete fr..
-
SQL INSERT(행 추가하기)Database 2021. 3. 25. 13:50
SELECT 명령은 질의를 하면 데이터베이스 서버가 클라이언트로 결과를 반환하는 병식으로 처리되었다. 데이터를 추가할 경우에는 이와 반대로 클라이언트에서 서버로 데이터를 전송하는 형식을 취하며 DB서버는 전송받은 데이터를 일련의 규칙 또는 사용자 정의에 따라 데이터베이스에 저장한다. INSERT로 행 추가하기 INSERT 명령은 테이블의 행 단위로 데이터를 추가한다. INSERT INTO genders VALUES(값1, 값2..) 아래와 같이 INSERT 명령은 처리 상태만 표시될뿐 SELECT 명령 처럼 결과를 출력해주지 않는다. 또한 각열에 대해 어떤 데이터를 저장할 수 있는지 확인하여 알맞은 데이터를 넣어줘야 에러가 발생하지 않는다. desc genders; INSERT 열을 지정하여 데이터 저장..
-
SQL CASEDatabase 2021. 3. 17. 14:58
SQL CASE문을 이용해 데이터를 변환 할 수 있다. NULL 값을 0으로 변환하여 출력하고 싶은 경우 1, 2같은 수치형 데이터를 남자, 여자와 같은 문자열로 변환하여 출력하고 싶은 경우 등에 사용하며, 굉장히 폭 넓게 사용되는 문법 중 하나이다. CASE문 SELECT, WHERE, ORDER BY 등 모든 구에서 사용이 가능하다. 단순 CASE문과 검색 CASE문 이렇게 2가지 문법으로 나뉜다. ELSE를 생략하지 않는 것을 권장한다. 수치형 데이터 => 문자형 데이터로 변환하는 것을 디코드 문자형 데이터 => 수치형 데이터 변환하는 것을 인코드라 부른다. 단순 CASE문 단순 CASE문의 경우 = 연산자를 이용해 값을 비교하기 때문에 NULL값을 비교할 수 없다! (NULL은 Is 연산자로 비교..
-
SQL 날짜연산Database 2021. 3. 17. 14:25
SQL에서는 날짜, 시간 데이터를 수치형 데이터와 같이 사칙 연산을 하여 나타낼 수 있다. 날짜. 시간 데이터를 저장하는 방법은 데이터베이스 제품마다 크게 달라진다. 보통 날짜만 지원하는 DATE형 시간만 지원하는 TIME형 날짜, 시간 모두 지원하는 DATETIME형으로 나뉜다. CURRENT_TIMESTAMP 함수 시스템 날짜와 시간을 확인하는 함수 SELECT CURRENT_TIMESTAMP; CURRENT_DATE 함수 시스템 날짜의 날짜만 확인하는 함수 SELECT CURRENT_DATE; 날짜의 덧셈과 뺄셈 덧셈 특정일로부터 + 1일 계산하기 INTERVAL 1 DAY => "1일 후" 라는 의미의 기간형 상수이다. (기간형 상수의 경우 데이터베이스 제품마다 제각각이다.) SELECT CURR..
-
SQL 문자열 연산Database 2021. 3. 8. 14:35
SQL에서의 문자열 연산 데이터베이스 제품마다 SQL방언이 존재하며 각 데이터베이스 제품 별로 아래와 같은 연산자로 문자열을 결합 할 수 있다. + : SQL server || : Oracle, DB2, PostgreSQL CONCAT : MySQL 1. CONCAT 함수 문자열 결합은 2개의 열 데이터를 모아 1개의 열로 처리하고 싶은 경우 사용한다. 이때 문자열형 데이터 뿐만이 아닌 수치형 데이터와의도 결합할 수 있다. 다만 결합한 결과는 문자열형 데이터가 된다는것만 기억하자 SELECT CONCAT (name, price) FROM products; 2. SUBSTRING 함수 문자열 일부분을 계산하여 반환해주는 함수이다. SUBSTRING('20140125001', 1, 4) => '2014' S..
-
Anagram grouping카테고리 없음 2021. 3. 4. 19:00
Anagram Anagram은 일반적으로 모든 원본 문자를 정확히 한 번 사용하여 다른 단어 나 구의 문자를 재배열하여 형성 된 단어 또는 문구이다. Example 1: Input: strs = ["eat","tea","tan","ate","nat","bat"] Output: [["bat"],["nat","tan"],["ate","eat","tea"]] Example 2: Input: strs = [""] Output: [[""]] Example 3: Input: strs = ["a"] Output: [["a"]] Constraints: 1
-
가장 흔한 단어 찾기카테고리 없음 2021. 3. 3. 18:06
가장 흔한 단어 찾기 금지된 단어를 제외한 가장 흔하게 등장하는 단어를 출력하라. 대소문자는 구별하지 않으며 구두점(, . ...)등은 무시한다. 개인적으로 너무 불친절한 문제가 아닐까 한다. 추가로 주어지는 Input 값과 banned 관련해서 테스트케이스가 계속해서 오류가 남을 뒤늦게 확인 할 수 있었다. Input: paragraph = "Bob hit a ball, the hit BALL flew far after it was hit." banned = ["hit"] Output: "ball" Explanation: "hit" occurs 3 times, but it is a banned word. "ball" occurs twice (and no other word does), so it is ..