mysql - SELECT list is not in GROUP BY clause and contains nonaggregated column -


this question has answer here:

receiving following error:

expression #2 of select list not in group clause , contains nonaggregated column 'world.country.code' not functionally dependent on columns in group clause; incompatible sql_mode=only_full_group_by 

when running following query:

select countrylanguage.language, country.code, sum(country.population*countrylanguage.percentage/100) countrylanguage join country on countrylanguage.countrycode = country.code group countrylanguage.language order sum(country.population*countrylanguage.percentage) desc ; 

using mysql world test database (http://dev.mysql.com/doc/index-other.html). no idea why happening. running mysql 5.7.10.

any ideas??? :o

as @brian riley said should either remove 1 column in select

select countrylanguage.language ,sum(country.population*countrylanguage.percentage/100) countrylanguage join country on countrylanguage.countrycode = country.code group countrylanguage.language order sum(country.population*countrylanguage.percentage) desc ; 

or add grouping

select countrylanguage.language, country.code, sum(country.population*countrylanguage.percentage/100) countrylanguage join country on countrylanguage.countrycode = country.code group countrylanguage.language, country.code order sum(country.population*countrylanguage.percentage) desc ; 

Comments

Popular posts from this blog

android - Why am I getting the message 'Youractivity.java is not an activity subclass or alias' -

python - How do I create a list index that loops through integers in another list -

c# - “System.Security.Cryptography.CryptographicException: Keyset does not exist” when reading private key from remote machine -