At yarışı web uygulaması yazıyorum ve bir istatistik sayfam var. Ne yapmaya çalıştığım, her yıl kaç kazanan olduğunu gösteriyor.SQL Count (*) çoklu tablolarda
Şu i bu var:
SELECT `Horse Number`, Count(*) AS `Total Winners`
FROM `races`.`2009`
WHERE `Win $`>0
GROUP BY `Horse Number`
ORDER BY Count(*) DESC;
Bu bir cazibe gibi çalışır ve döner aşağıdaki
Horse Number | Total Winners
1|48
2|49
3|39
4|31
5|26
6|31
7|21
8|25
9|31
10|16
11|16
12|20
13|9
14|8
15|6
16|3
17|3
18|2
19|2
şimdi 2010 yılı için bir tablo oluşturduk ve ben benzer bir şey dönmek için SQL isteyen ediyorum ama 2009 ve 2010'u aynı anda araştırmasını istiyorum. Böyle bir şey hile yapabilirim diye düşündüm.
SELECT `Horse Number`, Count(*) AS `Total Winners`
FROM `races`.`2009`
WHERE `Win $`>0
GROUP BY `Horse Number`
UNION
SELECT `Horse Number`, Count(*) AS `Total Winners`
FROM `races`.`2010`
WHERE `Win $`>0
GROUP BY `Horse Number`
ORDER BY Count(*) DESC;
Ama sadece tablonun altındaki ekstra sonuçları dönüyor yüzden şimdi bu
Horse Number | Total Winners
1|48
2|49
3|39
4|31
5|26
6|31
7|21
8|25
9|31
10|16
11|16
12|20
13|9
14|8
15|6
16|3
17|3
18|2
19|2
1|0
2|0
3|0
4|0
5|0
6|0
7|0
8|0
9|0
10|0
11|0
12|0
13|0
14|0
15|0
16|0
17|0
18|0
19|0
gibi her at için 2 satır olması
Teşekkür bana lütfen yardım edebilecek olan var mı
yapabilirsiniz SQL yol değildir. Bu sütunda bir endeksle bir yıl sütununa sahip tek bir tablo kullanmalısınız. Bu sizin için işleri daha kolay hale getirecektir. –
Bu nedenle dönem başı tabloları neden tetiklenmez. –