2016-07-20 4 views
0

内に異なるグループを除外:MySQLのGROUP BY - 列の値が、私は、各グループの日付の連結チェーンを返し、次のようなクエリを持っているグループ

myTableは列group_iddate、およびregion

を持っています
SELECT 
GROUP_CONCAT(
      date 
      ORDER BY DATE DESC SEPARATOR '<-' 
) AS date_chain 
FROM myTable 
GROUP BY group_id 

ただし、そのグループ内に複数のregion値があるグループは除外します。これを達成するための簡単な方法はありますか?

我々は

group_id | date | region 
________________________ 
    1 | 2012 | US 
    1 | 2013 | UK 
    2 | 2010 | US 
    2 | 2014 | US 

を持っていた場合、私たちは2014<-2010が返さ取得ではなく2013<-2012ため、グループ1の変化域

答えて

0

http://sqlfiddle.com/#!9/94ee4a/1

SELECT 
GROUP_CONCAT(
      date 
      ORDER BY DATE DESC SEPARATOR '<-' 
) AS date_chain 
FROM myTable 
GROUP BY group_id 
HAVING COUNT(DISTINCT region)<2 
必要があります
関連する問題