2012-02-03 93 views
0

MySQL的多個查詢我有這些值(剝離下來的例子),一個用戶表:具有位邏輯

  • 名稱
  • StateProvince
  • 國家
  • 大洲
  • 實力
  • 耐力
  • 智能

我基本上要通過區域爲自己返回的最高統計查詢。如果你在全國擁有最高的力量(67),你城市中最高的耐力(59),而不是任何地方的最高智力,那麼我會得到2排結果:

('Strength',67, 「國家」,「美國」)

(「耐力」,59,「市」,「微軟」)

需要注意的是,如果你有在該國的最高實力,你也將有最高州/省,縣和城市的實力(但我希望那些不會被返回的結果)。我可以使用多個SELECT查詢來完成這一切,但是,我想知道如何在單個查詢中提高效率(或者如果這是個好主意?)。我想像的邏輯會去像(僞代碼):

(請從用戶排序依據強度WHERE國家=「MyCountry」 LIMIT 1)如果name =「我」(請從用戶排序依據實力在哪裏! StateProvince ='MyState'LIMIT 1)...等等

此外,上述還需要耐力和智力。謝謝!

回答

0

檢查此鏈接MySQL control-flow-functions

SELECT CASE 1 WHEN 1 THEN 'one' WHEN 2 THEN 'two' ELSE 'more' END; 
+0

這有助於把我在正確的道路上,但我仍然在這一個完整的新手和我有困難的時候理解如何形成基本上說「時邏輯我們有0行,或者名稱不是'我的名字'「 – Trevor 2012-02-03 07:31:26