Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
How to GROUP BY ON 2 fields in SQL
Message
 
General information
Forum:
Microsoft SQL Server
Category:
SQL syntax
Environment versions
SQL Server:
SQL Server 2005
Miscellaneous
Thread ID:
01362746
Message ID:
01362749
Views:
24
This message has been marked as a message which has helped to the initial question of the thread.
>>>Hi,
>>>
>>>I have the following SQL Select code when using VFP database and it works:
>>>
>>>
>>>select Mytable.myfld1 + Mytable.myfld2 as MyGroup from MyTable group by MyGroup
>>>
>>>
>>>When executing this SQL Select against SQL Server it fails. How do I change this SQL Select so that it would work for both VFP and SQL Server?
>>>
>>>Thank you in advance.
>>
>>
Select MyField1 + myField2 from myTable group by MyField1 + myField2
>>
>>works, I just tried.
>>
>>Another way
>>
>>select MyGrp from (select myFld1 + MyFld2 as myGrp from Signs ) Test group by MyGrp
>
>I tried another approach, selecting each field and then group on fld1 and fld2 as following:
>
>
>Select MyField1, myField2 from myTable group by 1,2
>
>
>But I get error that Group By expression must contain at least one column that is not an outer reference. My example above is simplified as I have 2 JOINS in the SQL Select. So I need to understand how to change the JOIN to make it work.
>
>Thank you for your suggestions.
>
>UPDATE: The solution was to use the field names in GROUP BY as:
>
>Select MyField1, myField2 from myTable group by MyField1, myField2
>

Yes, you can not use numbers as we use them in VFP. You need to specify field names.

Same goes for having expressions, e.g. in VFP
select count(*) as Dups, myField from myTable group by myField having Dups > 1
in SQL Server
select count(*) as Dups, myField from myTable group by myField having count (*)> 1
If it's not broken, fix it until it is.


My Blog
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform