Sql-Standard
哪種 SQL 標準得到最廣泛和最完整的支持?
我想專注於學習和參考目的的 SQL 語言規範之一。哪個版本的 SQL 標准在 DBMS 中得到最廣泛的支持,以便我可以將時間和精力集中在它上面?
我認為您正試圖生活在 Joe Celko 的夢想世界中,在那裡您只能使用標準 SQL,並且在任何給定的一周內,您可能必須將所有程式碼從 SQL Server 移植到 Oracle,然後將 Oracle 移植到 DB2,然後再回到 SQL Server . 兩次。
雖然標準 SQL 的核心和基本方面可以在任何地方為您提供幫助,但出於對未來移植(或僅在原則上)的恐懼而將自己限制在該語言集並不是我推薦的路徑。就個人而言,我盡可能堅持使用 ANSI 標準的東西(例如 <> 與 !=、COALESCE 與 ISNULL、CURRENT_TIMESTAMP 與 GETDATE() 等),但我也不害怕使用特定於 SQL Server 的讓我的工作更輕鬆的東西。
了解 SQL 的一般工作原理很重要。了解該語言在您的RDBMS(es) 中的工作方式同樣重要——包括與標準的偏差、與另一個 RDBMS 實現相同概念的方式的偏差以及其他地方不存在的專有擴展。
例如,SQL Server 涵蓋了該標準的大部分內容,並且更接近於完全符合每個新版本。它會覆蓋100%嗎?高度懷疑。它會繼續添加標準中沒有的專有擴展嗎?當然。如果每個人都涵蓋了標準並且沒有人超越它,那麼選擇一個平台而不是另一個平台就沒有任何優勢,我們都將使用相同的東西。
他們都沒有。您可以學習任何 RDBMS 的標準 (-ish) SQL。
標準 SQL 並沒有在現實世界中用於支付成功項目的工作……
話雖如此,MySQL 是一個很好的起點,這裡有一個教程