2012-04-24 8 views
0

私はデータベースを持っており、その中にCOUNT機能を持つテーブルを作成したいと思います。出来ますか ?COUNTミリ秒アクセスでテーブルを作成

I 3つの既存のテーブルがあります。各メンバーが出席したように、フィードバックテーブルにおいて

Member 
Feedback 
Attendance 

、2列

出席と
Class_ID, 
Likes 

(CLASS_IDリンクを1クラス、例えばクラス1,2、 3、など、Likesはクラスのような人の数です)。出席テーブルで

、3列:

Class_ID 
Member_ID 
Non_member_name 

は今、私は2つの新しい列を追加するためにフィードバックテーブルを変更したいです。クラスに参加する人の数をカウントする1人、例えば、クラス1に出席する4人がいる場合、Class_ID = 1の4つの行が存在する。すなわち同類の割合をカウントするために、2つの

ALTER TABLE Feedback 
ADD COUNT(*) AS Number_Attending 
WHERE Class_ID.Feedback=Class_ID.Attendance 

/Number_attending * 100%がお好き*。提案/訂正は歓迎される前に(私が実行しようとしたが、フィールド定義の構文エラーは、ブラケットであります。

たとえば
+0

を参照してください。MSアクセスのどのバージョンが2010またはそれ以前を使用している2010は、オプションFを持っています。??または計算された列。計算されたデータを保存することは、正規化の規則に反するため、必須でない限り行わないでください。 – Fionnuala

+0

私は2010年を使用しています。私はそれが手動でカウントする人の数を計算するという考え方は重要ではないと思っています。 –

+1

あなたは情報を保存していないので、必須。 – Fionnuala

答えて

2

SELECT Class_ID, Count(Member_ID) As MemCount, Count(Non_Member_Name) As NonMemCount 
FROM Attendances 
GROUP BY Class_ID 

は、それが動作することはありません、代わりAccess 2010 calculated columns

+0

に投票してください。あなたはAS句を含めることができますので、 'Expr317'は表示されません。 Count(Member_ID)AS '列名'、Count(Non_Member_Name)AS '列名' –

+0

@JustinKirkはい、いいアイデアです。 – Fionnuala