三流君(TOP) /ASPで遊ぶ /記事一覧

SQL GROUP BY句 で グループ化 Count関数で集計 ORDER BY句で並べ替え

test038-3.asp

cnt_asp.mdb から訪問されたURLをグループ化して集計、降順に表示


発行する(した)SQL文は
Select URL, Count(URL) As URLCNT From log GROUP BY URL ORDER BY Count(URL) DESC
です
No.URL訪問者
1/cgi-bin/test/test077-2.asp259人
2/cgi-bin/test/test046-3.asp70人
3/cgi-bin/test/test089-1.asp61人
4/cgi-bin/test/test028-2.asp59人
5/cgi-bin/test/test029-2.asp42人
6/cgi-bin/test/test027-2.asp26人
7/cgi-bin/test/test026-1.asp22人
8/cgi-bin/test/test100-2.asp15人
9/cgi-bin/test/test105-2.asp14人
10/cgi-bin/test/test089-2.asp13人
11/cgi-bin/test/test039-1.asp11人
12/cgi-bin/test/test092-2.asp11人
13/cgi-bin/test/test105-1.asp11人
14/cgi-bin/test/test046-1.asp10人
15/cgi-bin/test/test030-1.asp9人
16/cgi-bin/map.asp9人
17/cgi-bin/test/test070-1.asp8人
18/cgi-bin/test/test033-1.asp7人
19/cgi-bin/test/test104-1.asp7人
20/cgi-bin/test/test104-2.asp7人
21/cgi-bin/test/test040-1.asp7人
22/cgi-bin/test/test100-3.asp6人
23/cgi-bin/test/test033-2.asp6人
24/cgi-bin/test/test046-2.asp6人
25/cgi-bin/test/test038-2.asp5人
26/cgi-bin/test/test073-1.asp5人
27/cgi-bin/test/test032-2.asp5人
28/cgi-bin/test/test093-5.asp5人
29/cgi-bin/test/test100-5.asp4人
30/cgi-bin/test/test047-2.asp4人
31/cgi-bin/test/test075-2.asp4人
32/cgi-bin/test/test029-1.asp4人
33/cgi-bin/test/test076-1.asp4人
34/cgi-bin/test/test083-1.asp3人
35/cgi-bin/test/test100-4.asp3人
36/cgi-bin/test/test100-1.asp3人
37/cgi-bin/test/test075-1.asp3人
38/cgi-bin/test/test043-1.asp3人
39/cgi-bin/test/test093-2.asp3人
40/cgi-bin/test/test083-3.asp3人
41/cgi-bin/test/test037-1.asp3人
42/cgi-bin/test/test073-2.asp2人
43/cgi-bin/test/test040-2.asp2人
44/cgi-bin/test/test047-1.asp2人
45/cgi-bin/test/test075-3.asp2人
46/cgi-bin/test/test038-1.asp2人
47/cgi-bin/test/test039-2.asp2人
48/cgi-bin/test/test087-1.asp1人
49/cgi-bin/test/test093-1.asp1人
50/cgi-bin/test/test032-1.asp1人
51/cgi-bin/test/test082-1.asp1人
52/cgi-bin/test/test038-3.asp1人
53/cgi-bin/test/test073-3.asp1人
54/cgi-bin/test/test028-1.asp1人
55/cgi-bin/cnt/cnta.asp1人
56/cgi-bin/test/test074-2.asp1人
57/cgi-bin/test/test074-1.asp1人
58/cgi-bin/test/test093-4.asp1人

終了です。
cnt_asp.mdb 最近訪問した人のデータ30件を表示


コーヒーブレイク たまには寄り道、休憩も(↓広告です):
広告:[8月の商品紹介] ← 基本?の当月を紹介
[10月の商品紹介] ← 少し先に発売の商品で予約を狙う
[5月の人気商品] ← 三ヶ月前に発売した人気の商品

GROUP BYを使用したサンプル(ソースの紹介)

詳細解説は[http:/asp/backno/asp038.html]を見てください
下記、/cgi-bin/test/test038-3.aspのソース(中身)です

GROUP BY を 使った ソースコードを紹介する

表示色の説明:ASP VBScriptは <% 〜 %>
キーワードはGROUP BY です。 <%@LANGUAGE=VBScript%> <html> <head><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=x-sjis"> <title>SQL GROUP BY句 で グループ化 Count関数で集計 ORDER BY句で並べ替え</title> </head> <body> <h1>SQL GROUP BY句 で グループ化 Count関数で集計 ORDER BY句で並べ替え</h1> test038-3.asp<br> <hr> <b>cnt_asp.mdb から訪問されたURLをグループ化して集計、降順に表示</b><br> <hr> <% 'ADO DB Connection オブジェクトを作成する、英文そのままじゃん Set db=Server.CreateObject("ADODB.Connection") '.Provider?プロバイダー?通信会社?じゃなくって 'データアクセスにはJet.OLEDB.4.0を使うことを設定 db.Provider = "Microsoft.Jet.OLEDB.4.0" '次に、接続DBの位置を渡すので、Server.MapPathで変換して渡す db.ConnectionString = Server.MapPath("cnt_asp.mdb") 'やっとデータベースを開ける db.open 'お約束のレコードセットの作成 テーブル名URLを指定 'GROUP BY句 で グループ化 Count関数で集計 ORDER BY句で並べ替え strSQL = "Select URL, Count(URL) As URLCNT " strSQL = strSQL & "From log " strSQL = strSQL & "GROUP BY URL " strSQL = strSQL & "ORDER BY Count(URL) DESC" 'オマケで画面にデータ表示 Response.Write "<hr>発行する(した)SQL文は<br><B><font color='green'>" Response.Write strSQL & "</font></B><br>です<hr>" Set rs = db.Execute(strSQL) 'データの表示をテーブルで行う Response.Write "<TABLE Border='1'>" '見出しをバカっぽく、そのまま書き込む Response.Write "<TR>" Response.Write "<TD>No.</TD>" Response.Write "<TD>URL</TD>" Response.Write "<TD>訪問者</TD>" Response.Write "</TR>" 'EOFまでループ nCNT = 1 Do While rs.EOF = False '.EOFがFalseの間 Response.Write "<TR>" '内容を表示する Response.Write "<TD>" & nCNT & "</TD>" Response.Write "<TD><A HREF='" & rs.Fields.Item("URL") & "' Target='_blank'>" Response.Write rs.Fields.Item("URL") & "</A></TD>" Response.Write "<TD ALIGN=RIGHT>" & rs.Fields.Item("URLCNT") & "人</TD>" Response.Write "</TR>" & Chr(13) & Chr(10) '次のレコードにポインタを移動する rs.MoveNext 'これを忘れると悲惨なことに、、、 'カウンタを増やす nCNT = nCNT + 1 Loop Response.Write "</TABLE>" 'テーブルは終わりです '開いていたレコードセットを閉じる rs.Close 'データベースも閉じようよ db.Close 'お行儀よくオブジェクトも開放しましょう(通常は自動的に解放されるけど) Set db = Nothing %> <hr> 終了です。<br> <A HREF="test037-1.asp">cnt_asp.mdb 最近訪問した人のデータ30件を表示</A><br> <br> </body> </html>

最近発売の雑誌を紹介する

不健康なプログラマーさん達へ(オイオイ)こんな雑誌もあります。
  1. Leaf (リーフ) 2008年 10月号
  2. Lmagazine (エルマガジン) 2008年 10月号
  3. クロワッサン 2008年 9/10号
  4. 食品と科学 2008年 09月号
  5. Hanako (ハナコ) 2008年 9/11号
  6. Hanako WEST (ハナコウエスト) 2008年 10月号
  7. こどもブティックCUCITO (クチート) 2008年 10月号
  8. 北海道生活 2008年 09月号
  9. 月刊 国民生活 2008年 09月号

人気の書籍を紹介します

  1. [406280509X]- 「加圧」ビューティ(DVD付)
  2. [4062575744]- 怖いくらい通じるカタカナ英語の法則 (ブルーバックス (B-1574))
  3. [4102033017]- 幸福について―人生論 (新潮文庫)
  4. [4812435641]- 新・自虐の詩 ロボット小雪
  5. [4582854311]- iPS細胞 世紀の発見が医療を変える (平凡社新書 431)
  6. [4763198181]- 毎朝1分で人生は変わる

※Ken3への連絡先 → [メール@アドレス]です。気軽に問い合わせてください

Googleで関連項目を検索する

LANGUAGE=VBScript + [キーワード:GROUP BY] Sub|Function プログラム|プログラミング
↓で検索するとプログラムの例 Sub/Function でまとまったHP

Google

あれ?私のページが検索に載ってない(笑)一度お試しを(私のページに、また戻ってきてね(爆))

ASPでDBはMDBを使用して、SQL文を発行するサンプル

テスト実行とサンプルソース

ASP系、ADO使用、MDB接続、SQL発行、メルマガ解説リンク

[No.26 MDBファイルにアクセスしてみたADODB.Connection]
[No.27 SQL INSERT INTO文でデータの追加]
[No.28 SQL ORDER BYでデータの並べ替え]
[No.30 SQL SELECT文WHERE句を使って条件検索]
[No.32 SQL DELETE文でデータを削除してみた]

[No.33 SQL UPDATE文でデータを更新する]
[No.38 SQL GROUP BY句 で グループ化する]
[No.39 SQL GROUP BY句 で グループ化 集計結果を並べ替えする]
[No.40 MDBへのSQL文 Format関数使用]
[No.43 SQL文 HAVING句でGroup化されたレコードに条件設定する]

[No.44 MDBを使ったアンケート集計を作る]
[No.46 SQL文 SELECT WHERE句でIN演算子を使用して複数条件を選択する]
[No.47 いろいろな削除処理で遊んでみた(笑)]
[No.70 SQL Select DISTINCT キーワードで重複結果の出力をハジク]
[No.73 テーブルをつなげて商品名を取得する方法]

[No.74 演算フィールドを作成する]
[No.75 SQL UNION演算子 で 表をつなげたレコードセットの作成]
[No.76 小計・合計の表示、SQLで小細工の嵐(笑)]
[No.77 SQL AS演算子で別名管理]
[No.82 ページ単位の表示にチャレンジしてみた]

[No.83 Select TOP 20 と Select Top n PERCENT で遊ぶ]
[No.87 ADO SQL Like演算子で部分検索する]
[No.88 SQL HAVING句でSUMした値をチェックする]
[No.89 SQL 集計関数MAXと副問い合わせ(サブクエリー)]




三流解説とリンクページを紹介

ASP系の解説を項目ごとにまとめてみました

[ASP Form等を使用したデータのやり取り]
[ASP その他処理サンプル]
[ASP テキストファイル処理]
[ASP VBScript関数関係の説明]
[ASP ADOでMdbファイルを使う]
[ASP ADOでExcelと接続してみた]

その他:blogや広告↓
[日記的なblog]← あまり更新してないけど・・・
[三流なプログラムコード]← 恥ずかしいのであまり載せてないけど・・・
[通販商品の足跡を紹介] ←通販商品などを紹介してます


現在時刻は、2008/08/30 5:22:34です。
[Topへ戻る] −−>[ASP系へ戻る] −−>[バックナンバーを見る]