2010-08-12 1 views

답변

4

, 당신이 먼저 평평해야합니다 :

SELECT a.column, a.tag1 AS tag 
    FROM TABLE a 
UNION ALL 
SELECT b.column, b.tag2 
    FROM TABLE b 
UNION ALL 
SELECT c.column, c.tag3 
    FROM TABLE c  
UNION ALL 
SELECT d.column, d.tag4 
    FROM TABLE d 
UNION ALL 
SELECT e.column, e.tag5 
    FROM TABLE e 

을 ... 당신이 그들을 계산하기 전에 :

SELECT t.tag, COUNT(*) tag_popularity 
    FROM (SELECT a.column, a.tag1 AS tag 
      FROM TABLE a 
     UNION ALL 
     SELECT b.column, b.tag2 
      FROM TABLE b 
     UNION ALL 
     SELECT c.column, c.tag3 
      FROM TABLE c  
     UNION ALL 
     SELECT d.column, d.tag4 
      FROM TABLE d 
     UNION ALL 
     SELECT e.column, e.tag5 
      FROM TABLE e) x 
GROUP BY x.tag 
ORDER BY tag_popularity DESC 
+0

을 와우 ... 난 'didn를 그것은 너무 복잡 할거라고 생각하지 않습니다. 다행입니다. – doug

+0

노동 조합은 실제로 내 데이터베이스에서 어떤 것도 변경합니까? – doug

+0

mmm 테이블이 없습니다. 테이블이 있습니다. 테이블이 테이블에 있습니다. 여기에 무슨 일이 일어나고 있는지 이해하지 못했습니다. – doug

관련 문제