视观表 (View) 可以被当作是虚拟表格。它跟表格的不同是,表格中有实际储存资料,而视观表是建立在表格之上的一个架构,它本身并不实际储存资料。
建立一个视观表的语法如下:
CREATE VIEW "VIEW_NAME" AS "SQL 语句";
"SQL 语句" 可以是任何一个我们在这个教材中有提到的 SQL。
来看一个例子。假设我们有以下的表格:
Customer 表格
...
分类:
数据库 时间:
2014-12-15 20:25:47
阅读次数:
190
SQL 中的 TRIM 函数是用来移除掉一个字串中的字头或字尾。最常见的用途是移除字首或字尾的空白。这个函数在不同的资料库中有不同的名称:
MySQL: TRIM( ), RTRIM( ), LTRIM( )Oracle: RTRIM( ), LTRIM( )SQL Server: RTRIM( ), LTRIM( )
各种 trim 函数的语法如下:
TRIM ( [ [位置] [要移...
分类:
数据库 时间:
2014-12-15 20:25:30
阅读次数:
202
在表格被建立在资料库中后,我们常常会发现,这个表格的结构需要有所改变。常见的改变如下:
加一个栏位删去一个栏位改变栏位名称改变栏位的资料种类
以上列出的改变并不是所有可能的改变。ALTER TABLE 也可以被用来作其他的改变,例如改变主键定义。
ALTER TABLE 的语法如下:
ALTER TABLE "table_name"
[改变方式];
[改变方式] 的详细写法...
分类:
数据库 时间:
2014-12-15 20:23:26
阅读次数:
257
表格是数据库中储存资料的基本架构。在绝大部份的情况下,数据库厂商不可能知道您需要如何储存您的资料,所以通常您会需要自己在数据库中建立表格。虽然许多数据库工具可以让您在不需用到 SQL 的情况下建立表格,不过由于表格是一个最基本的架构,我们决定包括 CREATE TABLE的语法在这个网站中。
在我们跳入 CREATE TABLE 的语法之前,我们最好先对表格这个东西有些多一点的了解。表格被分为栏...
分类:
数据库 时间:
2014-12-15 20:23:25
阅读次数:
176
索引 (Index) 可以帮助我们从表格中快速地找到需要的资料。举例来说,假设我们要在一本园艺书中找如何种植青椒的讯息。若这本书没有索引的话,那我们是必须要从头开始读,直到我们找到有关种直青椒的地方为止。若这本书有索引的话,我们就可以先去索引找出种植青椒的资讯是在哪一页,然后直接到那一页去阅读。很明显地,运用索引是一种有效且省时的方式。
从资料库表格中寻找资料也是同样的原理。如果一个表格没有索引...
分类:
数据库 时间:
2014-12-15 20:22:36
阅读次数:
194
主键 (Primary Key) 中的每一笔资料都是表格中的唯一值。换言之,它是用来独一无二地确认一个表格中的每一行资料。主键可以是原本资料内的一个栏位,或是一个人造栏位 (与原本资料没有关系的栏位)。主键可以包含一或多个栏位。当主键包含多个栏位时,称为组合键 (Composite Key)。
主键可以在建置新表格时设定 (运用 CREATE TABLE 语句),或是以改变现有的表格架构方式设定...
分类:
数据库 时间:
2014-12-15 20:21:54
阅读次数:
249
我们可以在一个 SQL 语句中放入另一个 SQL 语句。当我们在 WHERE 子句或 HAVING 子句中插入另一个
SQL 语句时,我们就有一个 subquery 的架构。 Subquery 的作用是什么呢?第一,它可以被用来连接表格。另外,有的时候 subquery 是唯一能够连接两个表格的方式。
Subquery 的语法如下:
SELECT "栏位1"
FROM "表格"...
分类:
数据库 时间:
2014-12-15 19:11:08
阅读次数:
192
之前我们看到的左连接 (left join),又称内部连接 (inner join)。在这个情况下,要两个表格内都有同样的值,那一笔资料才会被选出。那如果我们想要列出一个表格中每一笔的资料,无论它的值在另一个表格中有没有出现,那该怎么办呢?在这个时候,我们就需要用到 SQL OUTER JOIN(外部连接) 的指令。
外部连接的语法是依数据库的不同而有所不同的。举例来说,在 Oracle 上,我...
分类:
数据库 时间:
2014-12-15 19:10:26
阅读次数:
219
UNION 指令的目的是将两个 SQL 语句的结果合并起来。从这个角度来看, UNION 跟 JOIN有些许类似,因为这两个指令都可以由多个表格中撷取资料。 UNION 的一个限制是两个
SQL 语句所产生的栏位需要是同样的资料种类。另外,当我们用 UNION 这个指令时,我们只会看到不同的资料值 (类似 SELECT DISTINCT)。
UNION 的语法如下:
[SQL 语句...
分类:
数据库 时间:
2014-12-15 19:10:15
阅读次数:
147
UNION ALL 这个指令的目的也是要将两个 SQL 语句的结果合并在一起。 UNION ALL 和UNION 不同之处在于 UNION
ALL 会将每一笔符合条件的资料都列出来,无论资料值有无重复。
UNION ALL 的语法如下:
[SQL 语句 1]
UNION ALL
[SQL 语句 2];
我们用和上一页同样的例子来显示出 UNION ALL 和 UNION 的不同。同样...
分类:
数据库 时间:
2014-12-15 19:09:33
阅读次数:
250