View Full Version : Grouping numbers


chrislabs
03-03-2007, 08:52 PM
I have a table which lists player names, teams played for and the years they played there and my code looks like this

SELECT AlsoPlayedFor.playerID, AlsoPlayedFor.teamID, AlsoPlayedFor.TeamName, Min([AlsoPlayedFor].[Year]) & "-" & Max([AlsoPlayedFor].[Year]) AS [Year]
FROM AlsoPlayedFor
GROUP BY AlsoPlayedFor.playerID, AlsoPlayedFor.teamID, AlsoPlayedFor.TeamName;

which takes the Min year and the Max Year and displays it like "Year-Year"

But lets say for example the player played for 5 years so it 1990, 1991, 1992, 1993, 1995

It would display as 1990-1995 but I want it to display as 1990-1993, 1995, is this possiable??? Also I need it to gothe other wayso if the years are 1990, 1992, 1993, 1994, 1995 I want that to display as 1990, 1992-1995.

PLEASE HELP

llkhoutx
03-09-2007, 08:51 AM
Add a HAVING clause to your SQL string to specifiy the years that you want, i.e.

HAVING [AlsoPlayedFor].[Year] IN(1990, 1992, 1993, 1994)
You can dynamically build that SQL string, as required.

You'd use

WHERE [AlsoPlayedFor].[Year] IN(1990,1992,1993,1994)
if you weren't grouping.