al4629740
asked on
setup age groups in a table
I am putting together an activities table that will correspond relationally from another table. I am trying to figure out how to label predetermined age groups and all I can think of is to put them in the following columns. Since there can be more than one age group, for each activity, I figure setup 5 different columns for the age groups. Do you see any concerns doing it this way?
SELECT TOP 1000 [ID]
,[Activity Name]
,[Activity Desc]
,[Activity Outcome]
,[Location]
,[To]
,[From]
,[0 to 7]
,[8 to 12]
,[13 to 17]
,[18 to 20]
,[21 and over]
,[PIID]
FROM [CAPRegistration].[dbo].[tblOrgActivities]
ASKER
I have a form in Visual Basic where you check off your age groups for the activity. Since you can have more than one age group you can check off 0 to 7 and 8 to 12 for that activity.
ASKER
I would need to put an age range in and not an age
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
In your case, with those ranges, you could try this..
SELECT activity_name, case
when age <= 7 then 'Ages 0-7'
when age <= 12 then 'Ages 8 to 12'
when age <= 17 then 'Ages 13 to 17'
when age <= 20 then 'Ages 18 to 20'
else '21 and over' end as age_ranges
FROM tblOrgActivities
I have an article called SQL Server CASE Solutionsthat illustrates this, and other CASE solutions.
>Since there can be more than one age group
You'll have to give some more detail as to how this works.