I have a script that looks at a users grade level, and converts a grad year base on that grade. The only problem is, depending on when I run the SQL query, the grad year will be different since a students school year runs from say 2014-mid 2015.

Here is what I have, and I wanted to know of an easier way to do this, I cant use stored procs or functions, I don't have rights.

Is there cleaner, code that can be done here?

we are using this after dec 31

CASE

WHEN X.GL = '12' THEN YEAR(GETDATE())

WHEN X.GL = '11' THEN YEAR(GETDATE()) + 1

WHEN X.GL = '10' THEN YEAR(GETDATE()) + 2

WHEN X.GL = '09' THEN YEAR(GETDATE()) + 3

WHEN X.GL = '08' THEN YEAR(GETDATE()) + 4

WHEN X.GL = '07' THEN YEAR(GETDATE()) + 5

WHEN X.GL = '06' THEN YEAR(GETDATE()) + 6

WHEN X.GL = '05' THEN YEAR(GETDATE()) + 7

WHEN X.GL = '04' THEN YEAR(GETDATE()) + 8

WHEN X.GL = '03' THEN YEAR(GETDATE()) + 9

WHEN X.GL = '02' THEN YEAR(GETDATE()) + 10

WHEN X.GL = '01' THEN YEAR(GETDATE()) + 11

WHEN X.GL = 'KG' THEN YEAR(GETDATE()) + 12

WHEN X.GL = 'PK' THEN YEAR(GETDATE()) + 13

WHEN X.GL = 'EE' THEN YEAR(GETDATE()) + 14

END AS GRADYR, A.CAMPUS_ID

before dec 31

CASE

WHEN X.GL = '12' THEN YEAR(GETDATE()) +1

WHEN X.GL = '11' THEN YEAR(GETDATE()) + 2

WHEN X.GL = '10' THEN YEAR(GETDATE()) + 3

WHEN X.GL = '09' THEN YEAR(GETDATE()) + 4

WHEN X.GL = '08' THEN YEAR(GETDATE()) + 5

WHEN X.GL = '07' THEN YEAR(GETDATE()) + 6

WHEN X.GL = '06' THEN YEAR(GETDATE()) + 7

WHEN X.GL = '05' THEN YEAR(GETDATE()) + 8

WHEN X.GL = '04' THEN YEAR(GETDATE()) + 9

WHEN X.GL = '03' THEN YEAR(GETDATE()) + 10

WHEN X.GL = '02' THEN YEAR(GETDATE()) + 11

WHEN X.GL = '01' THEN YEAR(GETDATE()) + 12

WHEN X.GL = 'KG' THEN YEAR(GETDATE()) + 13

WHEN X.GL = 'PK' THEN YEAR(GETDATE()) + 14

WHEN X.GL = 'EE' THEN YEAR(GETDATE()) + 15

END AS GRADYR, A.CAMPUS_ID