過去ログ

                                Page     607
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼大文字、小文字の区別してカウント  washi 04/4/22(木) 13:14
   ┣Re:大文字、小文字の区別してカウント  よろずや 04/4/22(木) 23:45
   ┗Re:大文字、小文字の区別してカウント  YU-TANG 04/4/23(金) 15:53
      ┗Re:大文字、小文字の区別してカウント  washi 04/4/23(金) 16:19
         ┗Re:大文字、小文字の区別してカウント  YU-TANG 04/4/23(金) 22:47
            ┗Re:大文字、小文字の区別してカウント  washi 04/4/26(月) 19:14

 ───────────────────────────────────────
 ■題名 : 大文字、小文字の区別してカウント
 ■名前 : washi
 ■日付 : 04/4/22(木) 13:14
 -------------------------------------------------------------------------
   こんにちわ、washiと申します、すみませんがご教授ください。

やりたい事は、クエリで「aaa」と「AAA」を区別して、カウントを出したいのですが、
うまく出せません・・・

nameはもっと複雑はアルファベットの羅列なのですが・・・
(ex:aAsiKndDlM)などなど・・・

単に、一文字だけ大文字小文字があるとアクセスは同じ物とみなしてしまう、
仕様なので、困っています。

色々過去ログをあさってはいるのですが、うまくマッチする答えがなくて困っています。

普通にやるとこのようになってしまうのを・・・
name count
aaa   2
bbb   2

このようなカウント表示にしたいのですが・・・
name count
aaa   1
AAA   1
bbb   1
BBB   1

strcomp asc の関数など使ってもちゃんと使いこなせていない様で、
うまく表示しません・・・
すみませんが、ご教授願います。

 ───────────────────────────────────────  ■題名 : Re:大文字、小文字の区別してカウント  ■名前 : よろずや  ■日付 : 04/4/22(木) 23:45  -------------------------------------------------------------------------
   >普通にやるとこのようになってしまうのを・・・
>name count
>aaa   2
>bbb   2
>
>このようなカウント表示にしたいのですが・・・
>name count
>aaa   1
>AAA   1
>bbb   1
>BBB   1

意外と難問ですね。
16進数に変換してからカウントするとか...

 ───────────────────────────────────────  ■題名 : Re:大文字、小文字の区別してカウント  ■名前 : YU-TANG  ■日付 : 04/4/23(金) 15:53  ■Web : http://www.f3.dion.ne.jp/~element/msaccess/  -------------------------------------------------------------------------
   こんにちは、YU-TANG です。

>このようなカウント表示にしたいのですが・・・
>name count
>aaa   1
>AAA   1
>bbb   1
>BBB   1

私がよくやるのは、テキスト型フィールドではなくバイナリ型
フィールドを使う方法です。
たとえば既存のテーブル T1 に fldBin という 30 バイト長
(Access 2000 以降だと 15 文字分)のバイナリ型フィールドを
追加するには、下記のような DDL-SQL を実行します。

ALTER TABLE T1 ADD COLUMN fldBin Binary(30);

このフィールドでグループ化すると、大文字と小文字を区別して
カウント出来ます。

テーブル構造を変更したくない場合は、よろずやさんが仰っている
方法しかないのでは、と思います。

 ───────────────────────────────────────  ■題名 : Re:大文字、小文字の区別してカウント  ■名前 : washi  ■日付 : 04/4/23(金) 16:19  -------------------------------------------------------------------------
   ▼YU-TANG さん:
こんにちわ、washiです。
ご回答ありがとうございます!
しかし、まだまだ初心者の私には少々理解できない点があります。
申し訳ないのですが、ご教授ください。

>たとえば既存のテーブル T1 に fldBin という 30 バイト長
>(Access 2000 以降だと 15 文字分)のバイナリ型フィールドを
>追加するには、下記のような DDL-SQL を実行します。
>
>ALTER TABLE T1 ADD COLUMN fldBin Binary(30);

ここの部分が理解できません・・・
DDL-SQLを実行する際にどこに上記の構文を書き足せば、
バイナリ型になるのか・・・
テーブル自体のフィールドのどこかに、書き込めばよいのでしょうか・・・
ご教授ください。

そういえば、YU-TANG さんをAccessClubでも、見かけました!
あっちも参考にして、色々悩んで見ます!

 ───────────────────────────────────────  ■題名 : Re:大文字、小文字の区別してカウント  ■名前 : YU-TANG  ■日付 : 04/4/23(金) 22:47  ■Web : http://www.f3.dion.ne.jp/~element/msaccess/  -------------------------------------------------------------------------
   こんばんは、YU-TANG です。

> DDL-SQLを実行する際にどこに上記の構文を書き足せば、

選択クエリーを 1 つ新規作成して、デザインビューの状態で [クエリ]-
[SQL]-[データ定義] を選んでください。
SQL ビューに切り替わるので、SQL 文を記述して [クエリ]-[実行] を
選ぶだけです。

一応あらかじめ注意しておきますが、バイナリ型にするとカウントは
意図通りに出来るようになるかもしれませんが、テキスト型を暗黙の
前提にした他の処理のどこかで、意図しない結果が発生する可能性も
否定できません。
@ your own risk でお願いします。

 ───────────────────────────────────────  ■題名 : Re:大文字、小文字の区別してカウント  ■名前 : washi  ■日付 : 04/4/26(月) 19:14  -------------------------------------------------------------------------
   ▼YU-TANG さん:
こんばんは、washi です。
お返事遅くなりすいません。
試行錯誤しながらやってみた結果、ちゃんとカウントできるようになりました!
ありがとうございます!

>
>> DDL-SQLを実行する際にどこに上記の構文を書き足せば、
>
>選択クエリーを 1 つ新規作成して、デザインビューの状態で [クエリ]-
>[SQL]-[データ定義] を選んでください。
>SQL ビューに切り替わるので、SQL 文を記述して [クエリ]-[実行] を
>選ぶだけです。

これは、既存のテーブルにバイナリ型の列を作ると言う意味だったんですね。
それに、カウントしたい物を入れて、再度クエリで読み込んでカウントすると・・・
こんな、解釈であってますかね???
そんなこんなで、また何かありましたら、宜しくお願いします!

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 607