사용자 도구

사이트 도구


사이드바

카테고리

db:sql팁

테이블 카피

-- SRC_TABLE 을 DST_TABLE 라는 새 테이블을 만들고 내용을 복사한다.
SELECT * INTO DST_TABLE FROM SRC_TABLE

일부만 우선 보기

-- 걸리는 10개만 우선 보고 싶을때
SELECT top 10 * FROM TABLE_NAME

select 실행 락걸리지 않게

-- TUser 와 TempUser? 에 같은 아이디를 갖고 있는 사람들의 e-mail 주소
-- with(nolock)으로 락 걸리는 일이 안생기도록 한다.
-- 책의 예제에서 보고 따라 한거라서..
select TUser.userid, TUser.email, TempUser?.id
from TUser INNER JOIN TempUser? WITH(NOLOCK)
on TUser.userid = TempUser?.id;

update

-- update 하기
UPDATE (TABLE) SET (FIELD)=(newvalue) WHERE (condition)

쿼리 실행 계획얻기

SET showplan_all ON
-- 쿼리
SET showplan_all off

특정 확률로 가챠 뽑히는거를 시뮬레이션

코드 길어서 접어둠

SP 내부에서 임시로 테이블을 만들어서 사용하고자 할때

-- 변수로 선언한 테이블을 SP 내부에서 사용가능하다
USE AdventureWorks;
GO
DECLARE @MyTableVar TABLE(
    EmpID INT NOT NULL,
    OldVacationHours INT,
    NewVacationHours INT,
    ModifiedDate datetime);
UPDATE TOP (10) HumanResources.Employee
SET VacationHours = VacationHours * 1.25 
OUTPUT INSERTED.EmployeeID,
       DELETED.VacationHours,
       INSERTED.VacationHours,
       INSERTED.ModifiedDate
INTO @MyTableVar;
--Display the result set of the table variable.
SELECT EmpID, OldVacationHours, NewVacationHours, ModifiedDate
FROM @MyTableVar;
GO
--Display the result set of the table.
--Note that ModifiedDate reflects the value generated by an
--AFTER UPDATE trigger.
SELECT TOP (10) EmployeeID, VacationHours, ModifiedDate
FROM HumanResources.Employee;
GO

2009 6 18 써본 것

begin tran
alter table A_090618 alter column FieldName int not null
commit

select * into A_bak_090618 from A

begin tran
drop table A
commit

select * into A from A_090618
db/sql팁.txt · 마지막으로 수정됨: 2013/06/10 12:35 저자 kieuns