2017-02-16 21 views
0

私は2つのテーブルを持っていて、どちらもvarchar(10)フィールドが "palin"であり、2つのテーブルからすべての異なる "palin"MySQL 2つのテーブルから別々の値を選択してください。

TABLE1:ID1/palin1、ID2/palin2、ID3/palin3

表2:ID1/palin1、ID2/palin3、ID3 /テーブルと合計の行は次のように、それぞれの "パリン" の値を持っているどのように多く数えますpalin4

結果:palin1/2、palin2/1、palin3/2、palin4/1

私はそれを行っている2クSELECT DISTINCT palin、COUNT(*)FROM table1 GROUP BY palin "、次に" SELECT DISTINCT palin、COUNT(*)FROM table2 GROUP BY palin "を使用して両方のCOUNTSを合計すると、 1つのクエリですべてを実行する必要があります。

ありがとうございます!

+0

また、両方のテーブルからすべての異なる "palin"値を取得しましたが、COUNTはありませんでした: "SELECT DISTINCT palin FROM(SELECT palin FROM table1 UNION SELECT palin FROM table2)t GROUP BY palin" – Puni

+0

とにかくおかげで申し訳ありません: http://stackoverflow.com/questions/6712127/select-countdistinct-name-from-several-tables?rq=1 – Puni

答えて

0

あなたは2つのテーブルから異なる値にマージするが、次のことを試してみたい理由は理解していない:

select distinct palin, count(palin) from table1 union all select distinct palin, count(palin) from table2 group by palin; 

連合のすべてを同じレコードをフィルタリングし、労働組合はありません。

これが役に立ちます。 "FROM x.palin、COUNT(x.palin)を選択x.palinだけX GROUP(TABLE1のUNION ALL SELECTペイリンのFOMテーブル2 FROMペイリンを選択)"

ありがとう:

+0

正確なクエリは次のようです: " SELECT x.palin、COUNT(x.palin)FROM(SELECT palin FROM table1 UNION ALL SELECT palin FOM table2)x GROUP BY x.palin " – Puni

0

正確なクエリがあると思われます!

関連する問題