0
我真的不知道該怎麼稱呼它,而且我覺得我可能會錯過一些非常基本的東西,但我一直在搜索互聯網,並且一直無法找到簡單或直接的T-SQL操作來做我正在尋找的東西。T-SQL中的二維網格加入?表內行與行之間的相關性?
我正在構建一個包含比賽比賽數據的數據庫,並且我想要顯示大網格中任何兩名球員之間的球員比賽(總贏/輸)。因此,舉例來說,如果我有這種組合的臨時表:
Player1 wins losses Player2
A 4 2 B
A 1 3 C
B 2 4 A
B 0 5 C
C 3 1 A
C 5 0 B
我想找到一種方式來獲得這些結果在網格中,這樣的事情:
A B C
A 0/0 4/2 1/3
B 2/4 0/0 0/5
C 3/1 5/0 0/0
當然,這是一超級簡化的例子。實際上可能有幾十個甚至數百個玩家。無論有多少玩家,它都需要能夠無縫工作。我將從一個報告風格的過程中運行這個過程來分析數據,例如可以複製/粘貼到excel中的格式。
我確定我可以用一些非常複雜的動態SQL做這樣的事情,但我希望有一個更好/更標準的方式來構建這種方式的查詢。
我有一種感覺,我可能甚至已經學會了多年前在大學裏如何做到這一點,但之後就被遺忘了。
謝謝。我擔心我必須走這條路。當然似乎很奇怪,沒有現有的SQL語法來處理這種類型的查詢,因爲它似乎會經常出現。但我想這就是一些更高級的數據庫語言的用途。 –
我會暫時將其打開,以防某人能夠提供更簡單的解決方案。 –
@TimLeaf如你所知,SQL Server是按設計聲明的。它不支持宏替換(比如說... Visual FoxPro)。我會稍微多吃一點,看看我能不能「擰緊螺絲釘」。這將是一個簡單的動態支點,唯一的技巧就是讓兩個軸線成方形。 –