728x90 TIL - 프로그래밍/SQL50 [MySQL] WHILE문 While선언WHILE 조건 DO : 조건은 True/False의 값이 나오는 조건이여야 함종료END WHILE; : WHILE문의 종료, 반드시 뒤에 세미콜론!WHILE 조건 DO -- codeEND WHILE; ROW_COUNT()INSERT, DELETE, UPDATE 쿼리를 통해 수행된 row 수를 알려줌 이전 SQL 쿼리에서 영향을 받은 행의 수를 반환하는데, 업데이트가 없으면 0이 되어 반복이 종료 set @first := true;while row_count() or @first do set @first := false; -- update 코드end while; 2024. 9. 16. [MySQL] FIND_IN_SET : 콤마로 구분된 문자열 검색 FIND_IN_SET지정된 값이 문자열 목록에 포함되어 있는지 확인하는 데 사용FIND_IN_SET(value, list)value : 검색할 값 list : 쉼표로 구분된 문자열 목록 예시CodeSignal orderPrices 문제각 유저가 산 item의 총 합계 구하기 select sum(price)from item_prices# items 안에 item이 id에 속하면where find_in_set(id, replace(items, ';', ',')); 2024. 8. 28. MySQL FOREIGN KEY 기본 (설정, 삭제) FOREIGN KEY제약 조건을 설정한 필드는 외래 키라고 부르며, 한 테이블을 다른 테이블과 연결해주는 역할 외래 키가 설정된 테이블에 레코드를 입력하면, 기준이 되는 테이블의 내용을 참조해서 레코드가 입력 하나의 테이블이 다른 테이블에 의존 FOREIGN KEY 제약 조건을 설정할 때 참조되는 테이블의 필드는 반드시 UNIQUE나 PRIMARY KEY 제약 조건이 설정 외래키 값은 NULL이거나 부모 테이블의 기본키 값과 동일 1. 외래키 설정CREATE 문으로 설정CREATE TABLE 테이블이름( 필드이름 필드타입, ..., FOREIGN KEY (필드이름) REFERENCES 부모테이블이름 (필드이름));ALTER 문으로 설정ALTER TABLE 테이블이름 ADD FOREIG.. 2024. 7. 23. MySQL 뷰(View) 기본 (생성, 대체, 수정, 삭제) 뷰(View)란?데이터베이스에 존재하는 일종의 가상 테이블실제 테이블처럼 행과 열을 가지고 있지만, 데이터를 직접 저장하고 있지는 않음단지 다른 테이블이나 다른 뷰에 있는 데이터를 보여주는 역할만을 수행 뷰를 만드는 이유?삽입, 삭제, 수정 작업에 제한 사항을 두기 위해특정 사용자한테 뷰에 대한 권한만 줄 수 있음내부 데이터를 전체 공개하고 싶지 않을 때SQL 코드를 간결하게 만들기 위해 뷰의 장점특정 사용자에게 테이블 전체가 아닌 필요한 필드만 보여줄 수 있음복잡한 쿼리를 단순화해서 사용 가능사용한 쿼리를 재사용 가능 뷰의 단점한 번 정의된 뷰는 변경 불가삽입, 삭제, 갱신 작업에 많은 제한 사항을 가짐뷰는 자신만의 인덱스를 가질 수 없음뷰 연습1. 뷰 생성원본 테이블과 같은 이름을 가질 수 없음테이블.. 2024. 7. 23. MySQL 곱셈 구하기 MySQL은 SUM함수는 기본으로 제공되지만, column의 값을 모두 곱하는 기능 제공되지 않는다. 1. 여러 함수를 활용하여 구현하는 법 LOG -> SUM -> EXP 순으로 연산하면 곱셈을 구할 수 있다. DROP TABLE IF exists SYS.MULTIPLE;CREATE TABLE sys.MULTIPLE(NUM INT not NULL);insert into sys.MULTIPLE (NUM)values (1), (2), (3), (4), (5); select * from sys.MULTIPLE;select exp(SUM(LOG(NUM)))from SYS.MULTIPLE; 2. 변수 선언 : @변수를 선언하고 초기값을 1로 설정select @MUL := 1;select NUM , @MUL :.. 2024. 7. 2. MySQL 공백/문자 제거 - TRIM() 공백 제거TRIM : 문자열의 양쪽 공백 제거LTRIM : 문자열의 왼쪽 공백 제거RTRIM : 문자열의 오른쪽 공백 제거SELECT TRIM(' SQL Server ') AS TRIM , LTRIM(' SQL Server ') AS LTRIM , RTRIM(' SQL Server ') AS RTRIM; # REPLACE 함수도 가능SELECT REPLACE(' SQL Server ', ' ', '') as 'replace'; 문자 제거TRIM()BOTH : 양쪽LEADING : 왼쪽TRAILING : 오른쪽문자 제거에는 LTRIM, RTRIM 사용X-- 문자열 좌우 문자 제거TRIM(BOTH 제거할문자 FROM 문자열)--.. 2024. 7. 2. 이전 1 2 3 4 ··· 9 다음 반응형