プロが教えるわが家の防犯対策術!

クラシックなASPを利用しております。
データベース(mdb)に、ユーザIDによってフィールドが分けられた部分があります。
そこをカウントさせたいです。その際のSQL文の書きかたがよくわかりません。

イメージとしては、以下のようなかんじです。
     ユーザID:A ユーザID:B
データID    1      1
データID    1      1
こんなかんじでデータベースに登録されていて、ユーザIDごとにデータが入力されている(1と入力されている)フィールドをカウントしたいのです。

ユーザIDは、ログインする際に取得されるもので、個人個人で変わります。Sessionを使用しています。

SQL文の中に引数という形でユーザIDが代入されれば解決するのですが、どうもうまくいきません。なんとか教えていただけないものでしょうか。

A 回答 (1件)

質問の内容がいまひとつよく理解できないのですが、Sessionで取得したユーザーIDと同名のDBフィールドでレコードが1のもののレコード数を取得したいでよいのかな?


それなら、下の様にしたらどうでしょうか?
Dim sql As String
Dim userId As String
UserId = Session("Key")
sql = "SELECT COUNT(" & UserId & ") AS Count "
sql = sql & "FROM Table "
sql = sql & "WHERE " & UserId & " = 1"
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!