Home All Groups Group Topic Archive Search About
Author
30 Sep 2005 11:52 AM
Wayne Wengert
I have the query shown below which throws an error that "JudgeName" is an
invalid column name? Is using an alias not allowed here?

Wayne

=================  code  ==============
SELECT (Names.LastName + ', ' + Names.FirstName) As JudgeName
FROM JudgeEvals
Inner Join Judges On Judges.JudgeID = JudgeEvals.JudgeID
INNER JOIN Names ON Names.NameID=Judges.NameID
Group By JudgeName, Caption

Author
30 Sep 2005 12:03 PM
R.D
SQL BASIC RULE: YOU CAN'T USE ALIAS IN GROUP BY
Method 1:
SELECT (Names.LastName + ',' + Names.FirstName) As JudgeName
FROM JudgeEvals
Inner Join Judges On Judges.JudgeID = JudgeEvals.JudgeID
INNER JOIN Names ON Names.NameID=Judges.NameID
Group By (Names.LastName + ',' + Names.FirstName), Caption

Method 2
SELECT a.JudgeName from
(SELECT (Names.LastName + ',' + Names.FirstName) As JudgeName
FROM JudgeEvals
Inner Join Judges On Judges.JudgeID = JudgeEvals.JudgeID
INNER JOIN Names ON Names.NameID=Judges.NameID
Group By Caption ) a GROUP BY a.JudgeName

Regards
R.D
Show quote
"Wayne Wengert" wrote:

> I have the query shown below which throws an error that "JudgeName" is an
> invalid column name? Is using an alias not allowed here?
>
> Wayne
>
> =================  code  ==============
> SELECT (Names.LastName + ', ' + Names.FirstName) As JudgeName
> FROM JudgeEvals
> Inner Join Judges On Judges.JudgeID = JudgeEvals.JudgeID
> INNER JOIN Names ON Names.NameID=Judges.NameID
> Group By JudgeName, Caption
>
>
>
Author
30 Sep 2005 12:04 PM
Yosh
Wayne,

Unfortunately not. You can use the expression that makes up JudgeName. For
example,

SELECT (Names.LastName + ', ' + Names.FirstName) As JudgeName
FROM JudgeEvals
Inner Join Judges On Judges.JudgeID = JudgeEvals.JudgeID
INNER JOIN Names ON Names.NameID=Judges.NameID
Group By (Names.LastName + ', ' + Names.FirstName), Caption

- or -

SELECT (Names.LastName + ', ' + Names.FirstName) As JudgeName
FROM JudgeEvals
Inner Join Judges On Judges.JudgeID = JudgeEvals.JudgeID
INNER JOIN Names ON Names.NameID=Judges.NameID
Group By Names.LastName, Names.FirstName, Caption

Hope this helps,

Yosh

Show quote
"Wayne Wengert" <wayneSKIPSPAM@wengert.org> wrote in message
news:ugo4kVbxFHA.3644@TK2MSFTNGP11.phx.gbl...
>I have the query shown below which throws an error that "JudgeName" is an
>invalid column name? Is using an alias not allowed here?
>
> Wayne
>
> =================  code  ==============
> SELECT (Names.LastName + ', ' + Names.FirstName) As JudgeName
> FROM JudgeEvals
> Inner Join Judges On Judges.JudgeID = JudgeEvals.JudgeID
> INNER JOIN Names ON Names.NameID=Judges.NameID
> Group By JudgeName, Caption
>
Author
30 Sep 2005 12:05 PM
Tibor Karaszi
Locally, the GROUP BY is performed before the SELECT list, hence you cannot group by a column alias.
Either repeat the expression in GROUP BY or use a derived table.

Show quote
"Wayne Wengert" <wayneSKIPSPAM@wengert.org> wrote in message
news:ugo4kVbxFHA.3644@TK2MSFTNGP11.phx.gbl...
>I have the query shown below which throws an error that "JudgeName" is an invalid column name? Is
>using an alias not allowed here?
>
> Wayne
>
> =================  code  ==============
> SELECT (Names.LastName + ', ' + Names.FirstName) As JudgeName
> FROM JudgeEvals
> Inner Join Judges On Judges.JudgeID = JudgeEvals.JudgeID
> INNER JOIN Names ON Names.NameID=Judges.NameID
> Group By JudgeName, Caption
>
Author
30 Sep 2005 12:16 PM
David Portas
....
GROUP BY LastName, FirstName, Caption

--
David Portas
SQL Server MVP
--

AddThis Social Bookmark Button