MS SQL Server shorthand (function or something) to refer to specific columns

Hey there,

I'm working with a table that has about 200 columns (seems like I am ALWAYS doing that).  
I'd like to do something quick that would allow me to refer to columns in "groups" and have my select return just the columns that pertain to that group.  

For instance, if I wanted to write a select statement that brought back all of the possible address related fields from my table, instead of saying:
SELECT Address1Street, Address1City, Address1State, Address1ZIP, Address2Street, Address2City, Address2Zip, Address3Street etc etc.
I would just say something like
SELECT @AddressFields FROM MyTable and it would grab all the address related fields.  

I'm thinking like a lookup table of fields and groups and an SP or something?  

No big deal - I probably just spent more time thinking about it and writing this question than it's worth.  Just wondering if anyone had a cool trick they've used to make that easier.  

Thanks!
LVL 1
ttist25Asked:
Who is Participating?
 
Jim HornMicrosoft SQL Server Developer, Architect, and AuthorCommented:
You could create a View that contains the subset of columns in the way you are referring to as 'Groups', then just call the view.

i.e.
CREATE VIEW MyTable_Address AS

SELECT Name, Address1, Address2, City, [State], Zip
FROM YourTable
GO

Open in new window

... then to select them...
SELECT * FROM MyTable_Address

Open in new window

You can also use a Stored Procedure, and maybe even pass as a parameter an ID value, like this..
CREATE PROC MyTable_Address (@id int) AS

SELECT Name, Address1, Address2, City, [State], Zip
FROM YourTable
WHERE id = @id OR @id IS NULL
GO

Open in new window

... then to select them...
exec MyTable_Address 42

Open in new window

0
 
_agx_Commented:
Do the columns all have similar names, ie Address%,  Stuff%, etc...?
0
 
ste5anSenior DeveloperCommented:
Well, it's called normalization ;) but I guess it's a data warehouse table..

There is not such short hand other than Jim's solution.
0
 
ttist25Author Commented:
AGX - no - unfortunately in this table the field names are all things like ASDF and GHJKL.  :)

And yes, st5an, normalization - hah!  :P

Jim the view idea will be perfect for what I'm trying to do.  Thanks!
0
 
_agx_Commented:
@ttist25 - Okay, then Jim's idea is the way to go.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.