1. 문자열을 TIMESTAMP로 변환

TO_TIMESTAMP를 사용해 문자열 데이터를 TIMESTAMP로 변환합니다.

SELECT TO_TIMESTAMP('20240415031502293', 'YYYYMMDDHH24MISSMS') AS parsed_datetime;

 

결과:

parsed_datetime
---------------------
2024-04-15 03:15:02.293

 

2. 포맷팅하여 조회

날짜와 시간에 구분자를 추가하려면 TO_CHAR를 사용합니다.

기본 포맷팅

SELECT TO_CHAR(TO_TIMESTAMP('20240415031502293', 'YYYYMMDDHH24MISSMS'), 'YYYY-MM-DD HH24:MI:SS.MS') AS formatted_datetime;

결과:

formatted_datetime
-----------------------
2024-04-15 03:15:02.293

 

 

출처 : 우리의 친구 chatGPT...

-- 테이블, 컬럼(특정) Default 체크
DECLARE @tablename varchar(100)
DECLARE @columnname varchar(100)

set @tablename  = 테이블
set @columnname = 컬럼

select d.*  
  from sys.default_constraints d
 inner join sys.tables t on t.object_id = d.parent_object_id  
 inner join sys.columns c on c.object_id = t.object_id and c.column_id = d.parent_column_id 
 where t.name = @tablename
   and c.name = @columnname
;

-- 테이블, 컬럼(특정) Default 삭제
DECLARE @tablename varchar(100)
DECLARE @columnname varchar(100)
DECLARE @conname varchar(100)

set @tablename  = 테이블
set @columnname = 컬럼
SET @conname = (select d.name  
      from sys.default_constraints d
 inner join sys.tables t on t.object_id = d.parent_object_id  
 inner join sys.columns c on c.object_id = t.object_id and c.column_id = d.parent_column_id 
 where t.name = @tablename
   and c.name = @columnname
)
  
exec ('ALTER TABLE [' + @tablename + '] DROP CONSTRAINT [' + @conname + ']' )

-- 테이블, 컬럼(특정) Default 변경
DECLARE @tablename  varchar(100)
DECLARE @columnname varchar(100)
DECLARE @defaultold varchar(100)
DECLARE @conname    varchar(100)

set @tablename  = 테이블
set @columnname = 컬럼
set @defaultold = 변경 대상 Default 값
if EXISTS (select 'X' from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME = @tablename and COLUMN_NAME = @columnname and COLUMN_DEFAULT like '(' + @defaultold + '%)') begin
SET @conname = (
select d.name  
      from sys.default_constraints d
 inner join sys.tables t on t.object_id = d.parent_object_id  
 inner join sys.columns c on c.object_id = t.object_id and c.column_id = d.parent_column_id 
 where t.name = @tablename
   and c.name = @columnname
)   

exec ('ALTER TABLE [' + @tablename + '] DROP CONSTRAINT [' + @conname + ']')
end

if isnull((select COLUMN_DEFAULT from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME = @tablename and COLUMN_NAME = @columnname), '') = '' begin
exec ('ALTER TABLE [' + @tablename + '] ADD  DEFAULT CONVERT([char](8),getdate(),(112))+replace(CONVERT([char](8),getdate(),(108)),'':'','''') FOR ' + @columnname)
end

 

- 빨간색은 알아서 잘.. 변경해서.. 

DO $$ DECLARE
    r RECORD;
BEGIN
    FOR r IN (SELECT pid FROM pg_stat_activity
   where datname = 'DB명'
     and client_addr = '127.0.0.1'    
    ) LOOP
        EXECUTE ' SELECT pg_terminate_backend( ' || r.pid || ' )';
    END LOOP;
END $$;

 

* select 문 안의 where 조건에 해당하는 쿼리를 강제종료합니다.

 

+ Recent posts