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

ttist25
ttist25 used Ask the Experts™
on
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!
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Most Valuable Expert 2015

Commented:
Do the columns all have similar names, ie Address%,  Stuff%, etc...?
SQL Server Data Dude
Most Valuable Expert 2013
Author of the Year 2015
Commented:
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

ste5anSenior Developer

Commented:
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.

Author

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!
Most Valuable Expert 2015

Commented:
@ttist25 - Okay, then Jim's idea is the way to go.

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial