
題名の通りですが、php・mysqlを使用してリーグ戦表や順位表を作成したいと思っています。
ですが、まったく構成が組みたっておらず、だいたいの構成がわかる方がいらっしいましたらご教示お願いします。
参考サイト
リーグ表
http://soccer.yahoo.co.jp/jleague/matrix/j1
順位表
http://soccer.yahoo.co.jp/jleague/standings/j1
です。
上記参考サイトリーグ表の右側が仙台~福岡までの表記がありますが、こちらは順位表の内容が入ります。
それ以外はこのままです。
順位表は自動でソートされていますが、ボタン一つでソートの並び替えができるという風に考えています。
以上になりますが、だいたいの構成がわかる方がいらっしゃいましたら宜しくお願いします。
簡単に説明している部分もありますが、ご質問いただければお答えさせていただきます。
No.1ベストアンサー
- 回答日時:
何が必要か書き出すところから始めてみてください。
まず、チームを正規化したteamテーブルがいりますね。
とりあえず4チームつくりましょう。
create table team(team_id int not null primary key,team_name varchar(30));
insert into team values(1,"A"),(2,"B"),(3,"C"),(4,"D");
試合結果を保存しておくテーブルがいりますね。
試合のidをプライマリとして、ホームチームのid、ホームチームの得点、アウェイチーム
のid,アウェイチームの得点があればとりあえず大丈夫です。
create table taisen(id int not null primary key auto_increment,hometeam int,homepoint int,awayteam int,awaypoint int);
insert into taisen (hometeam,homepoint,awayteam,awaypoint)
values(1,3,2,2),(3,1,4,0),(1,0,3,2),(2,2,4,2),(1,1,4,2),(2,0,3,0),(2,1,1,2),(4,1,3,3),(3,5,1,2);
これで、順位表をつくってみます。
select team_name チーム名
,sum(homepoint>awaypoint)*3 +sum(homepoint=awaypoint) as 勝ち点
,count(sub.team_id) as 試合数
,sum(homepoint>awaypoint) as 勝ち数
,sum(homepoint=awaypoint) as 引き分け
,sum(homepoint<awaypoint) as 負け数
,sum(homepoint) as 得点
,sum(awaypoint) as 失点
,sum(homepoint) - sum(awaypoint) as 得失点差
from (
select hometeam as team_id,homepoint,awaypoint from taisen
union all select awayteam as team,awaypoint,homepoint from taisen
) as sub
left join team on sub.team_id=team.team_id
group by sub.team_id
order by 勝ち点 desc,得失点差 desc;
対戦表はちょっと応用になりますので、上記SQLの理解ができるようになってからでも
遅くないと思います
ご回答有難う御座います。
ややこしかったんですね。
自分の中でもう少し仕様を固めてから作りたいと思います。
作る際には上記を参考にさせていただきます。
有難う御座います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- 数学 リーグ戦で昇級、降級の考え方 5 2022/06/19 14:28
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- 大学受験 娘の大学受験勉強 6 2022/06/30 19:58
- MySQL 【投稿情報用データベース posts】は必要ないと思います。 1 2022/06/02 21:25
- その他(プログラミング・Web制作) python コードについて(初学者です) 3 2023/07/20 14:44
- SEO ホームページを作る際の質問です 1 2023/06/07 18:50
- Illustrator(イラストレーター) アイビスペイント、原稿作成について 1 2023/07/14 03:01
- Excel(エクセル) エクセルVBA オートフィルタでの絞り込みと並び替えについて 1 2023/07/08 13:08
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHP8でWarning:Undefined varia...
-
composerをインストールしたい...
-
phpの問い合わせフォームを作っ...
-
配列の値の更新方法について
-
PHPの構文で間違えが分からない
-
SFTPなどは使わないホームペー...
-
$_SESSIONに渡した後はそのまま...
-
($_POST['email']??"", ・・・...
-
phpのエラーについて
-
PHP MySql 画像を取得
-
marginの値でマイナス値を設定...
-
submitで思うようにページが遷...
-
HTML PHP ラジオボタンのイベント
-
php でqiitaのサイトにあったフ...
-
SplFileObject を利用したとき...
-
PHPの勉強してます。 配列のと...
-
BASIC認証のフォームをデザイン...
-
アップロードファイルを表示す...
-
複数のパソコンの中の1つのパソ...
-
返信機能のツリー構造の深さを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
phpの問い合わせフォームを作っ...
-
composerをインストールしたい...
-
PHP8でWarning:Undefined varia...
-
marginの値でマイナス値を設定...
-
phpでcookieがうまく保存されない
-
SplFileObject を利用したとき...
-
PHPSpreadsheetを使って関数を...
-
PHPSpreadsheetによる書き出し...
-
PHP8を使うと、大量のWarningが...
-
フォームで戻った際に入力済み...
-
PostgreSQLからCSV形式でエクス...
-
PHPを使って、別サイトの一部を...
-
BASIC認証のフォームをデザイン...
-
入力した部分を表示させたまま...
-
【初心者】XAMPPのapacheの(恐...
-
ログイン機の付きの掲示板サイ...
-
ワードプレスサイト PHP8.0.25...
-
Postgresの特定のカラムからス...
-
PHPで画像の渡しが上手く行きま...
-
PHPの勉強してます。 配列のと...
おすすめ情報