ホームページ  >  記事  >  バックエンド開発  >  PHP処理テーブル統計関数について

PHP処理テーブル統計関数について

WBOY
WBOYオリジナル
2016-06-23 13:15:061079ブラウズ

私が作成した統計ページの効果は

作成されたデータベーステーブルは
です
php を使用して実装する方法を教えてください。ありがとうございます!


ディスカッションへの返信 (解決策)

1 つの SQL コマンドで完了できます

@xuzuning
Master。 。 。 。 。 。どれもうまくいかないと思います!

確かに1つだけでいいので、1つずつステップバイステップで追加してください

初心者です!完全に疲れ果てました!

クラスを選択、人数として count(*)、合計スコアとして sum(score)、有効な人数として sum(if(スコアが有効かどうか='はい',1,0)、sum(if(スコアが有効かどうか = 'yes) '、スコア、0) を有効スコアとして....

これ以上書く必要はありません、スクリーンショットを使用するのが面倒です、入力したくないです

@xuzuning sum(if(スコアが有効かどうか='yes',1, 0)) これでは、有効な結果を持つ人の数を計算することはできません

group byとhavingを使ってみてください

@xuzuning @jmy454157571

sqlは正しいです, しかし、Phpループ出力はできません
$mysqli=new mysqli( "localhost","root","","car_insure");
$mysqli->set_charset("utf8"); if($mysqli->connect_error){
die("接続に失敗しました".$mysqli ->conect_error)
}
$sql="「無効な合計人数」として t3.*,t4.totalNum を選択してください、
から「無効な合計スコア」としてt4.totalScore(「クラス」としてt1.class_、「合計人数」としてt1 .totalNum、「合計スコア」としてt1.totalScore、「有効な合計人数」としてt2.totalNumを選択) people',t2.totalScore as '有効な合計スコア' from (totalNum として class_,count(id_) を選択、class_ によるスコア グループからの totalScore として sum(スコア_)) t1 左結合として (totalNum として class_,count(id_) を選択) ,sum(score_) を、flag_='is' を持つ class_,flag_ によるスコア グループからの totalScore を t1 の t2 として、class_=t2.class_)
t3 として
left join (totalNum,sum として class_,count(id_) を選択) (score_) as totalScore by class_,flag_ getting flag_='no') as t4
on t3.` class`=t4.class_"
$res=$mysqli->query($sql);

if($res){
echo"2222";
}else{
echo"1111";
$ mysqli->close();
何が起こっているのでしょうか? res が値を取得できませんでした。問題がどこにあるのかを確認してください

MySQL でクエリを実行すると、SQL ステートメントは正しいです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。