[MSSQL]매월 3째주 금요일 구하기(쿼리검증필요/주차관련)
·
Database
WITH nums ( num ) AS ( SELECT ROW_NUMBER() OVER ( ORDER BY ( SELECT NULL ) ) -1 FROM sys.all_columns ) , dlist ( aDay ) AS ( SELECT TOP 500 DATEADD( DAY, num * -1, '2024-05-01' ) FROM nums ) , dlist2 ( aDay, TGD ) AS ( SELECT aDay, DATEADD( DAY, ( ( 8 - DATEPART( WEEKDAY, aDay ) ) % 7 ) - 3, aDay ) AS ThuOfGivenDay FROM dlist ) SELECT * , DATEPART( YEAR, TGD ) AS [년] , DATEPART( MONTH, TGD ) AS ..
[MSSQL]DB연결(여러개)
·
Database
-- @sday, @eday 원하는 시작일자, 종료일자로 수정. -- @filename1, @filename2의 D:\MI_LOG\ 경로를 로그가 위치한 경로로 수정. DECLARE @SDate DATETIME, @EDate DATETIME, @query1 NVARCHAR(4000) DECLARE @sday VARCHAR(8) DECLARE @Eday VARCHAR(8) SET @sday = '20180711' SET @eday = '20181231' SET @SDate = CONVERT(datetime , @sday) SET @EDate = CONVERT(datetime , @eday) WHILE DATEDIFF(dd, @SDate, @EDate)>=0 BEGIN SET @sday = CONVERT(V..
[MYSQL]InnoDB Optimize
·
Database
C:\Program Files\MySQL\MySQL Server 5.5\bin>mysqlcheck -u root -p --optimize --databases dg_db_batch Enter password: ********** mysqlcheck -u root -p --optimize --databases dg_db_batch mysqlcheck -u root -p --optimize --databases dg_db_chart_day mysqlcheck -u root -p --optimize --databases dg_db_chart_month mysqlcheck -u root -p --optimize --databases dg_db_chart_week mysqlcheck -u root -p --opt..
[MSSQL]MSSQL 2005 유지관리 계획 등록 오류
·
Database
[GUID 에는 대시 4개를 사용하여 32개의 자릿수를 사용해야 합니다.] # select @@version 정보 Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) Oct 14 2005 00:33:37 Copyright (c) 1988-2005 Microsoft Corporation Developer Edition on Windows NT 6.1 (Build 7601: Service Pack 1) # Microsoft SQL Server Management Studio 정보 Microsoft SQL Server Management Studio 9.00.1399.00 Microsoft Analysis Services 클라이언트 도구 2005.090.1399.00..
[MSSQL]LPAD,RPAD,프로시저
·
Database
CREATE PROCEDURE [dbo].[AP_getcustcode] AS BEGIN RETURN SELECT dbo.lpad( ( select max(cust_code)+1 from customerinfo ), 15, '0' ) ============================================== SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER OFF GO CREATE FUNCTION [dbo].[GetCSContactSeqNew] ( @CustCode char(15) ) RETURNS char(3) AS BEGIN declare @id char(3) SELECT @id = dbo.LPAD( ISNULL(MAX(CSCON_CODE)+1,1), 3, '0') ..
[MSSQL]insert row 스크립트 생성 SP
·
Database
ms-sql에서 사용됨 -- 전체 테이블의 insert 스크립트 생성 exec sp_msforeachtable 'exec sp_geninsertstmt N''?'''; -- 해당 테이블만 추출 exec sp_geninsertstmt N'테이블명' -- 해당 테이블의 where 절 만 exec sp_geninsertstmt N'테이블명', N'where idx>10000';
[MS SQL] Lock 해결
·
Database
Lock을 찾기 위해서 sp_lock 프로시져를 실행 후, Lock Mode 가 "X" 을 것을 찾는다. (일반적으로 "S" 또는 "IS" 많이 일어나지만, 운영 상에는 큰 이슈는 되지 않는다. ) 그래서 sp_lock으로 조회되는 세션 중 Lock Mode 가 "X"인 것의 SPID 값을 가지고 와서, 예를 들면 SPID 값이 "56"일 경우, dbcc inputbuffer(56); 위와 같은 명령어를 실행해서 보면, EventInfo 컬럼에 어떤 SQL 문이 Lock 을 일으키고 있는지 확인할 수 있다. 출처 - http://jmkjb.tistory.com/entry/MSSQLUnLock
[MSSQL]CONVERT, DATEADD, GETDATE, DAATEPART 이용해서 날짜구하기
·
Database
SELECT GETDATE(); --오늘날짜 SELECT CONVERT(CHAR(8), DATEADD(dd,-1,GETDATE()),112); --어제날짜 SELECT CONVERT(CHAR(8), DATEADD(dd,+1,GETDATE()),112); --내일날짜 SELECT CONVERT(CHAR(8), DATEADD(mm,+3, GETDATE()),112); -- 3달후날짜 SELECT CONVERT(CHAR(8), DATEADD(yy,+1, GETDATE()),112); -- 1년후오늘날짜 SELECT CONVERT(CHAR(8), DATEADD(mm, -1, GETDATE()-DAY(GETDATE()-1)),112); --지난달1일 SELECT CONVERT(CHAR(8), DATEADD(mm,..
[MSSQL] 테이블 소유자 변경하기
·
Database
/*전체 테이블의 소유자 변경*/ SP_MSFOREACHTABLE 'sp_changeobjectowner ''?'' , ''dbo''' /*단일 테이블의 소유자 변경*/ EXEC sp_changeobjectowner 'LECTURE_PRE_FILE', 'dbo'
[MSSQL] MSSQL2000 DB백업본 복구하기
·
Database
RESTORE FILELISTONLY FROM DISK = 'D:\ems_monitor_backup_20070226' RESTORE DATABASE ems_monitor FROM DISK = 'D:\ems_monitor_backup_20070226' WITH MOVE 'ems_monitor_Data_01' TO 'D:\MSSQL\ems_monitor_Data_01_Data.NDF', MOVE 'ems_monitor_Log_01' TO 'D:\MSSQL\ems_monitor_Log_01_Log.LDF', stats = 10 exec sp_helpdb ems_monitor exec sp_dbcmptlevel 'ems_monitor', '90' DBCC SHRINKDATABASE (ems_monitor) GO