All Post

SQL

[SQL] IN 과 JOIN의 대한 궁금중

실무에서 query문을 짜면서 구글링을 하다가 흥미로운 질문을 발견해 퇴근 후 집에와서 찾아봤습니다. 위 이미지를 보게되면 JOIN과 IN절은 만일 컬럼이 유니크하지 않다면 다른 결과값을 나온다고 설명합니다.그래서 IN절과 WHERE이 같은 결과값을 같기 위해서는 JOIN에 DISTINCT를 사용해서 중복 제거 후 사용해야한다는 겁니다. 그래서 직접 궁금해서 query문을 적어 진행해보았습니다. CREATE TABLE IF NOT EXISTS a ( col INT, data VARCHAR(50));CREATE TABLE IF NOT EXISTS b ( col INT);INSERT INTO a (col, data) VALUES(1, 'A'),(2, 'B')..

SQL

[SQL] Date Format 함수 (formatting parameter)

Format Description %j n번째 일(100, 365) %H Hour 시(00, 01, 24) 24시간 형태 %h Hour 시 (01, 02, 12) 12시간 형태 %T hh:mm:ss %S, %s Second 초 %p AP, PM %w Day Of Week (0, 1, 2) 0부터 일요일 %U Week 주(시작: 일요일) %u Week 주(시작: 월요일) %M Month 월(Janeary, February etc...) %m Month 월(01, 02, 03) %W Day of Week 요일 (Sunday, Monday etc...) %D Month 월 (1st, 2dn, 3rd) %Y Year 연도(1990, 2010, 2021) %y Year 연도(90, 10, 21) %a Day of..

SQL

[MYSQL] 함수 만들기 (FUNCTION)

쿼리문법 함수 만들기 CREATE FUNCTION [함수이름] ([입력값 이름][데이터 타입],...) RETURNS [결과값 데이터 타입] BEGIN DECLARE [임시값 이름][데이터타입]; SET [임시값 이름]=[입력값 이름]; QUERY; RETURN 결과 값 END 함수 지우기 DROP FUNCTION [함수 이름]; MYSQL Workbench에서 함수를 처음 생성하기 전에 SET GLOBAL log_bin_trust_function_creators = 1; 위 명령어를 사용해서 권한을 생성한 후 함수를 사용하셔야 합니다! 또한 DELIMITER // 함수의 시작 정의 CREATE FUNCTION [함수이름] ([입력값 이름][데이터 타입],...) RETURNS [결과값 데이터 타입] B..

SQL

[MYSQL] 자주 사용하는 날짜형 함수 정리

NOW NOW() 현재 날짜와 시간 반환 SELECT NOW(); CURRENT_DATE CURRENT_DATE() 현재 날짜 반환 SELECT CURRENT_DATE(); CURRENT_TIME CURRENT_TIME() 현재 시간 반환 SELECT CURRENT_TIME(); YEAR YEAR(날짜) 날짜의 연도 반환 SELECT YEAR(NOW()); MONTH MONTH(날짜) 날짜의 월 반환 SELECT MONTH(NOW()); MONTHNAME MONTHNAME() 날짜의 월을 영어로 반환 SELECT MONTHNAME(NOW()); DAYNAME DAYNAME(날짜) 날짜의 요일을 영어로 반환 SELECT DAYNAME(NOW()); DAYOFMONTH DAYOFMONTH(날짜) 날짜의 일 ..

SQL

[MYSQL] 자주 사용하는 숫자형 함수

ABS ABS(숫자) 숫자의 절대 값 반환 SELECT ABS(columns_name) FROM use_table; - 다만 ABS를 사용할 때 FLOAT 타입이며면 입력 값의 근사치를 저장 후 보여줍니다. CEILING CEILING(숫자) 숫자를 정수로 올림해서 반환 SELECT CEILING(column_name) FROM use_table; FLOOR FLOOR(숫자) 숫자를 정수로 내림해서 반환 SELECT FLOOR(column_name) FROM use_table; ROUND ROUND(숫자, 자릿수) 숫자를 소수점 자릿수까지 반올리해서 반환 만일 자릿수를 0 입력 시 소수점 없이 정수만 반환 SELECT ROUND(column_name, 1) FROM use_table; TRUNCATE T..

SQL

[MYSQL] 자주 사용하는 문자형 함수

LOCATE - LOCATE("A", "ABC") - "ABC"에서 "A"는 몇번째에 위체해 있는지 검색해 위치 반환 - 문자가 여러 개라면 가장 먼저 찾은 문자의 위치를 반환 - 만약 찾는 문자가 없다면 0을 반환 SELECT *, LOCATE('a', `name`) FROM Artist; SUBSTRING - SUBSTRING("ABC", 2) - "ABC"에서 2번재 문자부터 반환 - 만약 입력한 숫자가 문자열의 길이보다 크다면 아무것도 반환하지 않음 SELECT *, SUBSTRING(`name`, 5) FROM Artist; RIGHT - RIGHT("ABC", 1) - "ABC"에서 오른쪽에서 1번째 문자까지 반환 SELECT *, RIGHT(`name`, 1) FROM Artist; LEFT..

python/algorithm

백준 11660 구간 합 구하기 5 (python)

문제 N×N개의 수가 N×N 크기의 표에 채워져 있다. (x1, y1)부터 (x2, y2)까지 합을 구하는 프로그램을 작성하시오. (x, y)는 x행 y열을 의미한다. 예를 들어, N = 4이고, 표가 아래와 같이 채워져 있는 경우를 살펴보자. 1 2 3 4 2 3 4 5 3 4 5 6 4 5 6 7 여기서 (2, 2)부터 (3, 4)까지 합을 구하면 3+4+5+4+5+6 = 27이고, (4, 4)부터 (4, 4)까지 합을 구하면 7이다. 표에 채워져 있는 수와 합을 구하는 연산이 주어졌을 때, 이를 처리하는 프로그램을 작성하시오. 입력 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 ..

python/algorithm

Recursion

Recursion - 자기 자신을 호출하는 함수 void func(...) { func(...); } 위 함수를 실행코드로 짜보자 public class Recursive1 { public static void main(String[] args) { func(); } public static void func(int k) { System.out.println("Hello"); func(); } } 위와 같은 코드를 실행하게 되면 return문이 없기 때문에 무한 반복으로 Hello를 출력하면서 에러가 발생하게 된다. 그럼 Recursion은 항상 무한루프에 빠질까? 그건 아니다. 또 하나의 코드를 보자 public class Code02 { public static void main(String[] ar..

Computer Science

클라우드 IaaS, PaaS, SaaS 비교

IaaS IaaS(Infrastructure-as-a-Service)는 인프라형 클라우드 서비스 클라우드가 단지 인프라를 제공 node.js, MongoDB 등을 개발자가 직접 설치해야 하는 대신 특정 서비스에 종속되지 않음 ex) AWS EC2 등 PaaS PaaS(Platform-as-a-Service)는 플랫폼형 클라우드 서비스 클라우드가 플랫폼을 제공 Node.js, MongoDB 등이 설치되어있으며 그저 클릭을 통해 해당 서비스를 이용할 수 있음 모니터링, CI/CD가 제공 ex) heroku SaaS SaaS(Softwar as a Service)는 서비스형 클라우드 서비스 완전한 서비스를 클라우드 서비스로부터 제공받아 사용 ex) Google Sheet 등 PaaS와 IaaS 비교 IaaS ..

python

[python] BeautifulSoup header 설정 방법

Web Page를 크롤링을 하다보면 차단되었던 경험이 다들 한번씩은 있으실 겁니다. 이때 필요한게 User Agent지정입니다. User Agent란? 간단히 말해 소프트웨어의 식별 정보입니다. 내가 어떤 OS를 사용하는지 어떤 버전의 웹 브라이저인지를 담고 있는 정보입니다. html문서의 정보를 가져오는 간단한 코드입니다. from bs4 import BeautifulSoup as BS import request url = 'url' response = requests.get(url) print(response.status_code) print(response.text) 이렇게도 웹페이지에 접속해서 html정보를 가져올 수 있지만 웹페이지 마다 다르지만 User Agent 를 검사 시 차단당할 수 도 ..

Balang
'분류 전체보기' 카테고리의 글 목록