간단하지만 아주 유용한 팁.. (개인적으로 이런류의 팁을 굉장히 좋아합니다.) 종종 SQL문을 작성하다보면 컬럼들의 이름을 주~욱 나열해야 할 때가 있습니다. INSERT, UPDATE, SELECT 등.. 혹 'SELECT는 select * from Products 처럼 별표~(*)로 가져오면 되는데 왜 컬럼이름을 써요~!!!' 라고 질문 하시는 분이 계시다면 다시 생각해 보시는 것이 좋습니다. 기본적으로 클라이언트에서 받는 데이터는 크기가 작으면 작을 수록 좋습니다. select * from Products 와 같이 Products 테이블의 모든 컬럼(10개)을 다 가져와도 실제로 쓰는 컬럼이 2개라면 나머지는 고스란히 쓸데없는 데이터가 되고 네트웍 낭비로 이어지게 됩니다. 어느정도 쿼리문을 짜는 분을 보면 SELECT문에 절대 별표(*, 혹은 아스테리크)로 데이터를 가져오지 않습니다. 그런 의미에서 보면 테이블을 외우고 있으면 상관 없지만, 그렇지 않다고 할 때 컬럼 이름을 다 치기란 여간 귀찮지 않은 일일 수 없습니다. 컬럼 이름 쉴새 없이 쳐댄 후 오류 삑 나면 스팀 받져.. 찾는게 더 귀찮아서. ㅡ_ㅡ* 이럴 때 쓸 수 있는 간단한 방법이 있습니다. 대략 2가지 정도를 소개하려고 하는데 하나는 SSMS에서 하는 방법 다른 하나는 역시 쿼리질 입니다. 2005라 SSMS지만 2000의 쿼리 분석기 역시 같은 방법으로 가능합니다. 무지무지 쉬우니 한 번 해보시길 바랍니다. (전 머리가 나빠 쉬운 것만을 좋아합니다. 하핫..) 1. SSMS에서 컬럼 이름 가져오기 간단합니다. 개체 탐색기에서 마우스를 테이블의 '열'을 끌고만 오시면 됩니다. 그림으로 보시죠. 짠~ 열 이름이 쉽게 나오게 됩니다.
2. 쿼리 이용 쿼리를 짜다 보면 키보드에서 손을 떼기가 상당히 귀찮습니다. 이럴 때 열이름을 SP로 만들어 놓고 쓴다면 마우스로 끌어오는 것 보다 쉽게 쓸 수 있습니다. 방금 급조를 했더니 급조티가 팍팍 나는군요.. =_= set ansi_nulls on
go set quoted_identifier on go create procedure dbo.usp_GetColumns
@tname varchar(256) as declare @cols varchar(1000)
select @cols = coalesce(@cols + ',' + name, name)
from sys.syscolumns where id = object_id(@tname) order by colid select @cols colnames
|
MSSQL 내장 함수 목록
작성자 : 단국강토
등록날짜 : 2009.01.03 08:31
덧글 쓰기 엮인글 쓰기 |
"쇼핑몰·홈페이지·오픈마켓
블로그·페이스북·이메일 등의 각종 마케팅 글쓰기, 각종 광고, 영업, 판매, 제안서, 전단지 반응율 3배×10배 이상 높이는 마법의 8단계 공식" |
☞자세히보기 |
|
|