2016-08-10 3 views
1

申し訳ありませんが、私はSQLに少し慣れており、これをどうやってやるのか分かりません。私はGoogleにしようとしましたが、正しい質問を探しているかどうかわからないことがあります。だからここにある。私は自分のデータベースに2つのテーブルを持っています。 1つはeventsと呼ばれ、もう1つはeventtypesと呼ばれます。どうすればmysqlの列の合計を取得できますか?

eventtypeの表は、

------------------- 
eventID | eventName| 
    1 | eveA  | 
    2 | eveB  | 
    3 | eveC  | 
___________________ 

と私のeventsテーブル...このようになります。この

-------------------------- 
eventCat |UserRegistered | 
    1  | John   | 
    2  | Mac   | 
    3  | Assz   | 
    2  | Ez   | 
    3  | Pz   | 
_________________________ 

(私は.....あなたが私のテーブルを理解してほしい)

のように見えます

events.eventCat=eventtype.eventID

今、私がしようとしているのは、 eventsテーブルでイベント1,2,3の参加者数を計算し、後でphpを使用してeventtypeテーブルを使用して適切に参加するユーザー数を表示します。

誰かがこれで私を助けることができますか?本当にありがとう !

+0

あなたは[条件] EVENTTYPEからSELECT COUNT(*)のような意味ですか? – EJoshuaS

答えて

1

でグループを使用して、イベントに基づいて、参加者のなしを選択します必要があります -

SELECT count(UserRegistered),eventName from events join eventtype on 
    events.eventCat=eventtype.eventID 
    GROUP BY eventCat 

これがあなたを助けることを願っています。

+0

ありがとう!これはトリックでした。私はSQLにもっと慣れ親しむようになるはずです。迅速な解決策をお寄せいただきありがとうございます@AfshanShujat – topacoBoy

1

followngクエリwork.itあなたはこれをacheiveすることにより、参加して、グループに適用することができます句

SELECT count(UserRegistered),eventName 
From events,eventype 
WHERE events.eventCat=eventtype.eventID 
GROUP BY eventCat 
+0

ありがとう、@coderはすばやい返信です!私はあなたの方法を試して、それも働いた!おかげで一人の男:) – topacoBoy

+0

@topacoBoy、私はそれに最初に答えて助けてうれしい – coder

2
create table eventtype 
( eventID int not null, 
    eventName varchar(100) not null 
); 
insert eventtype(eventID,eventName) values 
(1,'eveA'), 
(2,'eveB'), 
(3,'eveC'); 

create table events 
( eventCat int not null, 
    UserRegistered varchar(100) not null 
); 
insert events(eventCat,UserRegistered) values 
(1,'John'), 
(2,'Mac'), 
(3,'Assz'), 
(2,'Ez'), 
(3,'Pz'); 

問合せ:

select e.eventId,count(u.UserRegistered) as theCount 
from eventtype e 
join events u 
on u.eventCat=e.eventId 
group by e.eventId 
order by e.eventId; 
+---------+----------+ 
| eventId | theCount | 
+---------+----------+ 
|  1 |  1 | 
|  2 |  2 | 
|  3 |  2 | 
+---------+----------+ 
+1

すばらしい解決策を提供してくれてありがとう!まあ私はこの方法を適用しなかったが、私はそれがどのように行われたかの写真を得ることができます!もう一度おねがいします@Drew! – topacoBoy

関連する問題