| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- PHPStorm
- date
- IE이슈
- 참고사이트
- [ASP]
- MySQL
- egovframework
- 웹표준
- url
- 웹접근성
- #안드로이드
- 전자정부프레임워크
- 자동증가
- JavaScript
- gd
- FullCalendar
- 워터마크 썸네일
- #하이브리드앱
- Import
- jQuery
- php
- 초급개발자
- select box
- 나프다
- dump
- #splash
- 네이버지도 API
- inteliJ
- MSSQL
- SQL
- Today
- Total
목록SQL (13)
개발노트
다른 DB 에서 테이블 구조와 데이터 그대로 복사하기 DB1 : 복사할 DB명DB2 : 원본 DB명 CREATE TABLE DB1.테이블명 LIKE DB2.테이블명; INSERT INTO DB1.테이블명 SELECT * FROM DB2.테이블명;
MSSQL 날짜 변환- 기준날짜 2000년 01월 02일 13시 14분 15.678초 기준 날짜 형변환 - MSSQL 날짜 변환표 (기준날짜를 대상으로 CONVERT 실행하여 날짜 형변환)번호쿼리 결과코드 0 CONVERT(CHAR(19), DATETIME, 0) 01 02 2000 1:14PM MM DD YYYY H:MM 1 CONVERT(CHAR(10), DATETIME, 1) 01/02/2000 MM/DD/YYYY 2 CONVERT(CHAR(8), DATETIME, 2) 00.01.02 YY.MM.DD 3 CONVERT(CHAR(8), DATETIME, 3) 02/01/00 DD/MM/YY 4 CONVERT(CHAR(8), DATETIME, 4) 02.01.00 DD.MM.YY 5 CONVER..
ISNULL((SELECT apply_value FROM TB_RECRUIT_QUALIFICATION WHERE qualification_seq = duty_seq1), '없음') AS duty_name2
Ms-sql 에서 자동증가값 (MySQL 의 auto_increment) 를 위해 identity를 설정한 칼럼( 보통은 seq )에는 insert 구문으로 직접 값을 insert 할수 없다 해서 migration을 하거나 직접 데이터를 넣을 경우에는 identity를 해제하고 넣어야 한다. 이를 위한 구문은 다음과 같다 SET identity_insert 테이블이름 On -- insert 쿼리 SET identity_insert 테이블이름 Off 테이블 이름에는 dbo. 은 빼고 순수한 테이블 이름만 입력하자
SELECT SEQ, -- 시퀀스 ORDER_NUM, -- 순서변경에 사용할 컬럼 ROW_NUMBER() OVER (ORDER BY USE_ORDER) AS ROW_NUMBER FROM TABLEORDER BY ORDER_NUM DESC; UPDATE TABLE TB SET ORDER_NUM = ( SELECT ROW_NUMBER FROM( SELECT SEQ, ORDER_NUM OID, ROW_NUMBER() OVER (ORDER BY ORDER_NUM) AS ROW_NUMBER FROM TABLE ORDER BY ORDER_NUM DESC ) WHERE OID = TB.ORDER_NUM )
SELECT*FROM (SELECT* FROM (SELECT ROWNUM SEQ, SEQ,TITLEFROM AAA) ALEFT OUTER JOIN (SELECT * FROM BBB) BON A.SEQ = B.SEQ ) WHERE SEQ BETWEEN 1 AND 10 위 쿼리를 아래로 변경 데이터가 없는 쪽의 테이블에 (+) 추가 없으면 일반 INNER JOIN 처리 SELECT*FROM (SELECT* FROM (SELECT ROWNUM SEQ, SEQ,TITLEFROM AAA) A, (SELECT * FROM BBB) BWHERE A.SEQ = B.SEQ (+) ) WHERE SEQ BETWEEN 1 AND 10
SELECT name, value$FROM sys.props$WHERE name = 'NLS_CHARACTERSET'; SELECT name, value$FROM sys.props$WHERE name = 'NLS_NCHAR_CHARACTERSET'; SELECT name, value$FROM sys.props$WHERE name = 'NLS_LANGUAGE';
궂이 서비스 단에서 처리 할 필요없이 쿼리만으로 가능하다 위의 레코드(LEAD), 아래 레코드(LAG) SELECT *FROM (SELECT MEDIA_SEQ, TITLE, CONTENTS, REG_DATE, LEAD(TITLE,1,'다음글') OVER(ORDER BY MEDIA_SEQ) NEXT_TITLE, LEAD(MEDIA_SEQ,1) OVER(ORDER BY MEDIA_SEQ) NEXT_MEDIA_SEQ, LEAD(REG_DATE,1) OVER(ORDER BY MEDIA_SEQ) NEXT_REG_DATE, Lag(TITLE,1,'이전글') OVER(ORDER BY MEDIA_SEQ) PREV_TITLE, Lag(MEDIA_SEQ,1) OVER(ORDER BY MEDIA_SEQ) PREV_MEDIA..
오라클에서 (Mybatis) 조회수 자동증가 쿼리요지는 Update 구문 안에 Select 구문으로 조회후 값을 증가시키는 것! UPDATE TB_NAMESETCOUNT = (SELECT nvl(COUNT, 0) + 1FROM TB_NAMEWHERE MEDIA_SEQ = #{seq})WHERE SEQ = #{seq}
DBCC CHECKIDENT('테이블명', RESEED, 0)