0

これがSQLのみを使用して可能かどうかさえわかりませんが、ここに行きます...

1 つのテーブルにサッカーの結果のリストがあり、各行は試合であり、その試合のすべてのデータが含まれています。各試合を循環し、ホーム チームを取得し、最後の 6 試合をチェックし、指定された試合のみを表示します。チームは過去 6 試合の 50% 以上で 2 ゴール以上を決めました。

これまでのところ、私はそれを一緒にステッチする方法を知りません...

すべての試合のリストを作成し、ホーム チームのみを返します。

SELECT Date, Home
FROM [FDATA].[dbo].[Goals]
ORDER BY Date

そのチームの最後の 6 試合を取得する:

SELECT TOP 6 *
FROM [FDATA].[dbo].[Goals]
WHERE Home = 'home from first query'  AND Date <= 'date from first query'  
ORDER BY Date DESC

次に、返された 6 試合の 50% 以上でチームが 2 点以上のゴールを決めたかどうかを確認し、真の場合は最初のクエリから行を出力します。

SELECT *
FROM last query
WHERE HomeGoals >= 2
ORDER BY Date DESC 

この質問の粗雑さをお詫びしますが、私は少し初心者です。

4

1 に答える 1