Jump to content

need to select groups with common names


attaboy

Recommended Posts

I have a table called countries with 3 columns  name, language, and population.  I need to find a query that list groups of countries that have the same language so if I have 10 countries and 3 of them speak English, 2 speak German and the other countries speak unique languages my output would list the English and German speaking countries.  I have to do this with a mysql query only no php.  

Link to comment
Share on other sites

never mind I found a solution

 

;

|

+--------------------------------------------------------------------------------------------------------------

------------------+

1 row in set (0.00 sec)

 

mysql> SELECT *

    -> FROM countries

    -> WHERE primary_language IN

    -> (

    -> SELECT primary_language FROM countries

    -> GROUP BY primary_language

    -> HAVING COUNT(primary_language) > 1

    -> )

    -> ORDER BY primary_language;

+-----------+------------------+------------+

| name      | primary_language | population |

+-----------+------------------+------------+

| Austrilia | English          |  22851000 |

| Canada    | English          |  34730000 |

+-----------+------------------+------------+

2 rows in set (0.00 sec)

 

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.