MYSQL

    MYSQL

    [MYSQL] WITH ROLLUP - 결과값의 소계/총계(부분합) 출력하기

    웹에서 사용할 쿼리에는 사용하지 않고 데이터를 조회할때만 사용된다. 웹에서 동일한 기능을 사용하고 싶다면, GROUP BY를 이용할 것. 각 직업별 임금의 평균과 합계, 그리고 전체 직업별 평균과 합계를 한번에 구하시오, SELECT JOB, AVG(SAL), SUM(SAL) FROM emp GROUP BY JOB WITH ROLLUP 화살표 왼쪽 부터 전체 직업의 임금의 평균, 합계이다. 각 직업, 부서별 임금의 평균과 합계, 그리고 전체 직업,부서별 평균과 합계를 한번에 구하시오, SELECT JOB, deptno, AVG(SAL), SUM(SAL) FROM emp GROUP BY JOB, deptno WITH ROLLUP 빨간색으로 표시된건 부분합/소계이고 최하단 파란색 NULL은 전체합/총계이다.

    MYSQL

    [MYSQL] ESCAPE - 쿼리문에서 LIKE에 반응하지 않도록 단순 문자열로 읽기게 하기

    LIKE 'A' ESCAPE 'B' B바로 뒤에있는 문자는 A에서 특수문자(LIKE에 반응하는 특수문자)가 아니라 단순 문자열임을 알려준다. LIKE '67#%% Guilty' ESCAPE '#' #% => #의 바로 뒤에있는 %는 문자열이에요~ = '67%' 로 시작하는 데이터 검색 LIKE '67#%#% Guilty' ESCAPE '#' #% => #의 바로 뒤에있는 %는 문자열이에요~ = '67%% Guilty' 데이터 검색 LIKE '67#__ Guilty' ESCAPE '#' #_ => #의 바로 뒤에있는 _는 문자열이에요~ = '67_'로 시작하고 뒤에 한글자가 있는 데이터 검색

    MYSQL

    [WSL/Ubuntu] mysql서버 설치 및 제어 (키기, 끄기, 상태 확인)

    # WSL도 VMWare처럼 가상으로 os를 돌릴수 있는 것이다. # WSL에서는 고정IP를 주는게 너무 힘들기 때문에, 그대로 둔다. 그래서 HideSQL에서 해당 IP로 접속하려고 할때, 접속이 안되면 IP가 바뀐것이기에 Ubuntu에서 ip a를 해서 확인해서 바뀐 IP로 접속 해주어야 한다. 고정IP는 VMWare에서 지정해주는게 좋다. #그래서 WSL로 만들어진 Ubuntu의 SQL에서 포트를 잡는것은 가상이기 때문에, 제어판->서비스에서 설정하는 포트와는 다르다. # ubuntu에 설치된 sql과 window에 설치된 sql은 다르다. # 제어판-> 서비스에서 제어하는 mysql서버와 ubuntu에서 제어하는 mysql서버는 다른것이다. # ubuntu에 설치된 mysql서버는 ping이 보내..

    MYSQL

    [DB] DB랭킹 확인하는 사이트 / DB트렌드 확인하는 사이트

    DB-Engines Ranking Popularity ranking of database management systems. db-engines.com

    MYSQL

    매일 출석체크 하는 사람 조회 MYSQL

    SELECT uid FROM attend WHERE dt BETWEEN '2017-11-01' AND '2017-11-10' GROUP BY uid HAVING COUNT(*) = DATEDIFF('2017-11-10', '2017-11-01') + 1 ; 출처 : www.gurubee.net/article/78513

    MYSQL

    해당 상품과 함께 많이 구매한(조회한) 상품

    오라클 1) ""이 책을 본.. 다른 사람이 가장 많이 본 다른 책...상위 베스트 10."" select top 10 책 from 구독테이블 where 본사람 in ( select 본사람 from 구독테이블 where 책 = '이책' ) group by 책 order by count(*) desc 2) "" 어떤 상품이 있는데.. 이 상품을 산 구매자들이 구매한 다른 상품들 중 가장 구매가 많았던 상위 10가지를 추출하고 싶거던요.."" select top 10 상품 from 구매테이블 where 구매자 in ( select 구매자 from 구매테이블 where 상품 = '어떤상품' ) group by 상품 order by count(*) desc 1,2번의 방식은 똑 같습니다...... 출처 www...

    MYSQL

    [PHP/MYSQL]테이블 상단 열에 따라 배열 바꾸기 (GET방식)

    $sort1 = $_GET['sort1']; $sort2 = $_GET['sort2']; $page = $_GET['page']; if (!$to_date) $to_date = date("Ymd", time()); if ($sort1 == "") $sort1 = "ct_status_sum"; //기본 배열 if (!in_array($sort1, array(WHERE로 넣을 컬럼명을 배열로 작성해준다))) $sort1 = "ct_status_sum"; if ($sort2 == "" || $sort2 != "asc") $sort2 = "desc"; $sort1 = strip_tags($sort1); if( preg_match("/[^0-9]/", $fr_date) ) $fr_date = ''; if( pre..

    MYSQL

    [MYSQL] 특정 컬럼내 데이터 값 치환하기

    update 테이블명 set 컬럼명=replace(컬럼명,'대상문자','치환될문자');

    MYSQL

    컬럼(column)과 필드(field) 무엇이 다를까?

    칼럼(column)과 필드(field)는 주로 행을 뜻하는 용어로, 백 엔더들은 주로 혼용해서 쓴다고 알고 있었다. 정확한 차이가 무엇인지 구글링을 해보고 알게 되었다. 레코드, 필드는 파일 시스템상에서 표현되는 용어라고 한다. 실무에서는 어떤 걸 써도 크게 상관은 없을 것 같지만 차이는 알아두면 좋을 것 같다. 파일 시스템 데이터베이스 모델링 관계형 데이터베이스 파일(file) 엔터티(Entity) 테이블(table) 레코드(record) 튜플(Tuple) 행(row) 키(key) 유일값(identifier) 기본키(Primary key), unique 필드(field) 어트리뷰트(attribute) 컬럼(column) 출처 http://www.sqler.com/476174

    MYSQL

    DB SELECT시 TOP 1과 LIMIT 1의 차이점

    MSSQL MYSQL 설명 TOP 1 LIMIT 1 테이블의 레코드를 조회할 때 결과 중 상위 x 개 만 표시한다. TOP는 MSSQL에서 사용되는 함수이고, LIMIT는 MYSQL에서 사용되는 함수이다. 두 함수의 효과는 테이블의 레코드를 조회할 때 결과중 상위 x개를 반환한다