0
のヘルプ、私は次のクエリを持っていますので、paper_idでグループ化されたすべてのORGSの数である4列である私は必要なものMySQLのカウントクエリ
id org initial
1001 org1 J. Doe
1001 org1 J.Smith
1003 org2 A. Doe
1004 org3 A. Smith
1004 org3 B. Doe
1006 org4 B. Smith
1007 org5 C. Doe
:
select AP.paper_id as id,
concat(A.organization, A.country)as org,
group_concat(SUBSTR(first_name, 1, 1), '. ', last_name SEPARATOR ', ') as initial
from authors A
inner join authors__papers AP ON A.author_id = AP.author_id
join tmp_orgs ORGS ON ORGS.paper_id = AP.paper_id
where ORGS.organization=A.organization AND
AP.is_contact_author < 1
group by A.organization, AP.paper_id
order by AP.paper_id, idx
それはにデータがsimlar出力
id org initial org_count
1001 org1 J. Doe 2
1001 org1 J.Smith 2
1003 org2 A. Doe 1
1004 org3 A. Smith 2
1004 org3 B. Doe 2
1006 org4 B. Smith 1
1007 org5 C. Doe 1
I疲れアドオンサブクエリ:
結果は次のようになります。(著者からのdcntとしてSELECT COUNT(DISTINCT(編成))A INNER JOIN authors__papers AP.author_id = A.author_id AP.is_contact_author < 1 AND paper_id = ??? GROUP BY paper_id)as org_count
...ただし、各行(上記のクエリの???)のpaper_idの指定方法を理解できません。 ?!私が誰かのためで埋めていますので、私は本当にSQLの男ではないけど、それを必要している選択するか、またはそれは本当に問題ない任意のヘルプは高く評価されますが、ほとんどがある
tmp_orgsはテンポラリテーブルであり、getttingです。#1137 - テーブルを再オープンできません: 't3' –
@DDurham 'JOIN'行をコメントアウトして、もう一度チェックしてください。 – Blank
実際に私はあなたの例を使用して、代わりに一時テーブル内のクエリを挿入する結合を取得することができたので、今私はそれをメインクエリで選択することができます。ありがとう! –