- ベストアンサー
php sqlite count 列数取得
php5 apache2 sqlite xpの環境で、指定したテーブルをcountして行数ではなく、列数を取得したいのですが、調べても見つけることができなかったためご教授御願いします。 A B C 2 4 6 1 3 4 行でしたら select count(*) from tbl_a で「2」が取得できるのですが、「3」の列を取得したいのです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
sqlite_num_fieldsの使い方は、 <?php //適当にDBひらいて $res = sqlite_open('filename'); //適当にクエリを発行して結果セット($result)を得て $result = sqlite_query($res, 'select * from tbl_a'); //結果セットを引数にする $count = sqlite_num_fields($result); ?> でよさそうです。 が、列数って、自身で設計したテーブルなのであれば、わざわざスクリプトで数えなくても、分かっている内容ではないですか? SQL文を面倒臭がらず、 SELECT A, B, C FROM tbl_a というように、フィールド全部列挙してあげたほうが良い気がしますよ。
その他の回答 (1)
- t_ohta
- ベストアンサー率38% (5238/13705)
回答No.1
select した結果に対して sqlite_num_fields 関数でフィールド数を得るのではだめですか?
質問者
お礼
解決のきっかけになりました。有難うございます。
質問者
補足
申し訳ありません。初心者で調べたものの関数の使用方法が解りませんでした。サンプルを載せて頂けるとありがたいです。
お礼
サンプル感謝します。DB内のデータが多く変動も多いためスクリプトでの方法を考えています。全体の列数からあるデータの割合なども求めたりするもので・・・。お世話になりました。