• SQL必知必会


    数据库基础——数据库术语
    数据库:数据库是一个以某种有组织的方式存储的数据集合。
    数据库(database)
    保存有组织的数据的容器(通常是一个文件或一组文件)。
    数据库软件应称为数据库管理系统(DBMS)。数据库是通过 DBMS 创建和操纵的容器。
    表(table)
    某种特定类型数据的结构化清单。
    模式(schema)
    关于数据库和表的布局及特性的信息。
    表由列组成。列存储表中某部分的信息。
    列(column)
    表中的一个字段。所有表都是由一个或多个列组成的。
    正确地将数据分解为多个列极为重要。
    数据库中每个列都有相应的数据类型。数据类型(datatype)定义了列可
    以存储哪些数据种类。
    数据类型
    所允许的数据的类型。每个表列都有相应的数据类型,它限制(或允
    许)该列中存储的数据。
    行(row)
    表中的一个记录。
    表中每一行都应该有一列(或几列)可以唯一标识自己。
    主键(primary key)
    一列(或一组列),其值能够唯一标识表中每一行。
    表中的任何列都可以作为主键,只要它满足以下条件:
     任意两行都不具有相同的主键值;
     每一行都必须具有一个主键值(主键列不允许 NULL 值);
     主键列中的值不允许修改或更新;
     主键值不能重用(如果某行从表中删除,它的主键不能赋给以后的新行)。

    SQL(发音为字母 S-Q-L或 sequel)是 Structured Query Language(结构
    化查询语言)的缩写。SQL是一种专门用来与数据库沟通的语言。

    编写 SQL语句需要良好地理解基本数据库设计。

    如果使用 DISTINCT 关键字,它必须直接放在列名的前面。

    SELECT prod_name
    FROM Products
    LIMIT 5 OFFSET 5;
    所以, LIMIT 指定返回的行数。 LIMIT 带的 OFFSET 指定从哪儿开始。

    请注意, DESC 是 DESCENDING 的缩写,这两个关键字都可以使用。与 DESC
    相对的是 ASC (或 ASCENDING ),在升序排序时可以指定它。但实际上,
    ASC 没有多大用处,因为升序是默认的(如果既不指定 ASC 也不指定
    DESC ,则假定为 ASC )。

    SELECT prod_id, prod_price, prod_name
    FROM Products
    ORDER BY 2, 3;
    SELECT 清单中指定的是选择列的相对位置而不是列名。

    通配符搜索只能用于文本字段(字符串),非文本数据类型字段不能使用通配符搜索。
    需要特别注意,除了能匹配一个或多个字符外, % 还能匹配 0 个字符。 %代表搜索模式中给定位置的 0个、1个或多个字符


    另一个有用的通配符是下划线( _ )。下划线的用途与 % 一样,但它只匹配单个字符,而不是多个字符。

    使用通配符的技巧


    concat()函数
    1、功能:将多个字符串连接成一个字符串。
    2、语法:concat(str1, str2,...)
    返回结果为连接参数产生的字符串,如果有任何一个参数为null,则返回值为null

    做好注释




    分组是使用 SELECT 语句的 GROUP BY 子句建立的

    GROUP BY 子句中列出的每一列都必须是检索列或有效的表达式(但不能是聚集函数)。如果在 SELECT 中使用表达式,则必须在 GROUP BY子句中指定相同的表达式。不能使用别名。
    GROUP BY 子句必须出现在 WHERE 子句之后, ORDER BY 子句之前。
    关键是,相同的数据出现多次决不是一件好事,这是关系数据库设计的
    基础。关系表的设计就是要把信息分解成多个表,一类数据一个表。各
    表通过某些共同的值互相关联(所以才叫关系数据库)。
    总之,关系数据可以有效地存储,方便地处理。因此,关系数据库的可
    伸缩性远比非关系数据库要好。

    自联结(self-join)、自然联结(natural join)和外联结(outer join)

    目前为止使用的联结称为等值联结(equijoin),它基于两个表之间的相等测试。这种联结也称为内联结(inner join)。










  • 相关阅读:
    J2EE系列 (一) 几个技术规范
    MyEclipse 10 优化技巧
    J2EE (二) Servlet设置Session Cookies
    CSS 外层box自动计算高度的问题
    UI设计技巧Div封闭式Div导致页面显示异常
    Windows 7 IIS7 无法启动, 显示WAS & W3SVC没有启动的错误提示
    Windows 7 截图
    GridView技巧增加序号列
    ERWin & ERStudio图里的实线和虚线的含义
    [转]CSS布局口诀 CSS BUG顺口溜
  • 原文地址:https://www.cnblogs.com/apeandcat/p/10363878.html
Copyright © 2020-2023  润新知