代码之家  ›  专栏  ›  技术社区  ›  Adrian

ANSI SQL手册

  •  38
  • Adrian  · 技术社区  · 15 年前

    有人能推荐一本好的ANSI SQL参考手册吗?

    当你需要一个基本的或更深入的解释或例子时,我并不需要一个教程,而是一个合适的参考文档。

    目前我正在使用 W3Schools SQL Tutorial SQL Tutorial 没关系,但我觉得它们不够深。

    当然,每个主要的RDBMS生产商都会有一些针对自己产品的参考手册,但它们往往有偏见,有时会使用专有扩展。

    编辑:这个问题的目的是关注数据库引擎的共同点,即SQL根。但是理解这些差异也是一件积极的事情- this 很有趣。

    10 回复  |  直到 11 年前
        1
  •  28
  •   bobince    15 年前

    这是第二次非正式审查草案 SQL:1992 似乎对我所查到的一切都足够准确。1992年涵盖了DBMS中经常使用的大部分内容。

        2
  •  14
  •   Thomas Padron-McCarthy    15 年前

    SQL不像C或Java,在那里有语言的标准,然后许多公司和组织尽可能地按照标准执行语言。

    相反,主要的数据库早于SQL标准,而该标准是一种折衷方案,在这种方案中,每个数据库供应商都希望在标准中使用他们的特定方言和特性。

    因此,数据库之间的差异要比典型的编程语言编译器之间的差异大得多,要使用数据库,您真的需要知道特定的SQL方言。

    说了这句话,我有古尔茨和佩尔茨的 SQL-99 Complete, Really 在我的书架上。如果你需要知道标准真正包含了什么,这是一本好书。(是的,自SQL-99以来有一个更新的版本,但似乎没有人关心。)

    编辑: 事实上,不只是 自SQL-99以来的更新版本,但是 :sql:2003、sql:2006和sql:2008。但似乎没有人在意。实际上,许多人甚至不关心SQL-99,所以在某种程度上,SQL-92仍然是“标准”。

        3
  •  7
  •   S.Lott    15 年前

    所有的ANSI文档都可以从(您猜对了)ANSI购买。

    http://webstore.ansi.org/

        4
  •  6
  •   Aaron Digulla    15 年前

    ANSI SQL参考手册的主要问题是找不到实现该手册的数据库。当它完成时,您会发现ANSISQL不能解决一些日常问题。这就是所有专业数据库定义扩展的原因。

    因此,在工作中,您将需要一个参考手册,用于您所使用的数据库的特定版本。

        5
  •  2
  •   Community noseratio    7 年前

    这让我想起了我的第二年大学课程,在那里我们学习关系理论而不是SQL。

    读一本关于关系理论的好书。自1969年EdgarCodd最初定义关系模型以来,数据库理论和实践不断发展。独立于任何SQL产品,SQL和关系理论利用数十年的研究,提出了最新的处理材料,可在任何地方。任何一个有着适度到高级的SQL背景的人都将从本书中的许多见解中受益。

    alt text

    Oreilly 2009年1月

        6
  •  1
  •   Michael Riley - AKA Gunny    15 年前

    我真的很喜欢乔·塞尔科写的任何东西 Celko's Books

        7
  •  1
  •   Ritesh M Nayak beny23    15 年前

    我发现学习SQL的最好方法是实际地编写查询和了解联接/条件等的性质。我发现这个链接有很多DIY示例是最好的: http://sqlzoo.net/

        8
  •  0
  •   HLGEM    15 年前

    虽然有点过时,但这本书真正有帮助的是看看不同的供应商是如何实现的,我相信它包括了ANSII标准。

    http://www.amazon.com/SQL-Nutshell-2nd-Kevin-Kline/dp/0596004818/ref=sr_1_1?ie=UTF8&s=books&qid=1257963172&sr=8-1

        9
  •  0
  •   Adrian K    15 年前

    Devguru资源一直对我很好: http://www.devguru.com/technologies/t-sql/home.asp

    尽管我必须承认,这并不是一个严格意义上的“ANSI”资源。我一直以MS SQL为中心,在我刚开始的时候它对我很有帮助。imho您的最佳选择是使用多个资源,特别是对于您要使用的每个DB平台,至少包括一个资源。

    引用Devguru介绍他们的T-SQL资源:

    尽管有SQL标准, 如ansi sql92和sql99,大多数 数据库使用自己的方言和/或 延期。微软的SQL风格 在SQL Server 7和SQL Server中使用 2000被称为T-SQL。虽然许多 本快速参考中的示例 可以在其他数据库上工作,它是 假设使用了SQL Server 2000, 尤其是对于高级主题,如 存储过程。

        10
  •  0
  •   srikanth rongali    15 年前

    我想这可能对你有帮助。

    了解ANSI SQL标准 作者:Kevin Kline

    http://www.amazon.com/gp/product/1565927443/102-0105946-4028970?v=glance&n=283155