また、質問させていただきます。以前、こちらのサイトでComboboxのitemをプログラム実行時に追加できる方法をお伺いしました。現在は、テキスト(メモ帳に)保存する形でプログラムを組んでいます。comboboxの内容は、職業や性別など文字型が入力されている状態です。ですので、TDBChartのクエリで、文字型データが入力されたテーブルからデータを集計してグラフとして表示するときに、select・sum・countなどの関するを利用して、プロパティで設定しようとしても、number型ではないので、データセットの部分に表示できません。
TO_number関数を使用しても、文字型の数字なので、データの集計ができません。
よって、一度TEditやTMemoにテーブルの内容を数字に変換そして挿入してからTDBChartへ反映させるか、集計用のテーブルを作ってからそこからデータをカウントしてDBChartに反映させようとしています(ほかに良い方法があったら、ご指導いただければと思います)。
[集計用のテーブルを作らないとき」
comboboxの項目は実行時ユーザがいくらでも増やせるので、その場合のデータの件数のカウントやり方を教えてもらえませんか?項目数が決まっていれば、if query1.fieldbyName('occupation') = '会社員' then
hensu := tasu + 1;のように
できますが、項目数と項目内容ができないので、この使えません。お分かりのかた、ご指導いただけませんか?
SQLで集計した結果はInteger型ではないですか?
データーベースは何をお使いですか?
集計用のSQLはどの様に書いていますか?
データベースは、オラクルというものを使っています。データは文字型(VARHCAR)です。SQLはクエリに、SELECT OCCUPATION, COUNT(*) FROM TABLE_NAME GROUP BY OCCUPATIONと一例ですが、書いています。
OCCUPATIONは文字列ですが、COUNT(*)の結果は整数でしょう?
COUNT(*)にAliasを付けて、表示させればどうでしょう。
それをTDBChartに反映させればグラフになりませんか?
HOtaさんへ。
どうもありがとうございました。目盛やラベルを調整し、count(*)にAliasをつけたらできました。
ツイート | ![]() |