摘要: 我们有时候可能会需要修改表格中的资料。在这个时候,我们就需要用到UPDATE指令。这个指令的语法是: UPDATE "表格名"SET "栏位1" = [新值]WHERE "条件";最容易了解这个语法的方式是透过一个例子。假设我们有以下的表格:Store_Information表格Store_Name... 阅读全文
posted @ 2014-12-15 19:37 vpoet 阅读(496) 评论(0) 推荐(0)
摘要: 到目前为止,我们学到了将如何把资料由表格中取出。但是这些资料是如果进入这些表格的呢? 这就是这一页 (INSERT INTO) 和下一页 (UPDATE) 要讨论的。基本上,我们有两种作法可以将资料输入表格中内。一种是一次输入一笔,另一种是一次输入好几笔。我们先来看一次输入一笔的方式。依照惯例,我们... 阅读全文
posted @ 2014-12-15 19:32 vpoet 阅读(632) 评论(0) 推荐(0)
摘要: 有时候我们会决定我们需要从数据库中清除一个表格。事实上,如果我们不能这样做的话,那将会是一个很大的问题,因为数据库管理师 (Database Administrator -- DBA) 势必无法对数据库做有效率的管理。还好,SQL 有提供一个DROP TABLE的语法来让我们清除表格。DROP TA... 阅读全文
posted @ 2014-12-15 19:29 vpoet 阅读(229) 评论(0) 推荐(0)
摘要: 主键 (Primary Key) 中的每一笔资料都是表格中的唯一值。换言之,它是用来独一无二地确认一个表格中的每一行资料。主键可以是原本资料内的一个栏位,或是一个人造栏位 (与原本资料没有关系的栏位)。主键可以包含一或多个栏位。当主键包含多个栏位时,称为组合键 (Composite Key)。主键可... 阅读全文
posted @ 2014-12-15 19:17 vpoet 阅读(180) 评论(0) 推荐(0)
摘要: 在表格被建立在资料库中后,我们常常会发现,这个表格的结构需要有所改变。常见的改变如下:加一个栏位删去一个栏位改变栏位名称改变栏位的资料种类以上列出的改变并不是所有可能的改变。ALTER TABLE也可以被用来作其他的改变,例如改变主键定义。ALTER TABLE的语法如下: ALTER TABLE ... 阅读全文
posted @ 2014-12-15 19:09 vpoet 阅读(366) 评论(0) 推荐(0)
摘要: 索引 (Index) 可以帮助我们从表格中快速地找到需要的资料。举例来说,假设我们要在一本园艺书中找如何种植青椒的讯息。若这本书没有索引的话,那我们是必须要从头开始读,直到我们找到有关种直青椒的地方为止。若这本书有索引的话,我们就可以先去索引找出种植青椒的资讯是在哪一页,然后直接到那一页去阅读。很明... 阅读全文
posted @ 2014-12-15 19:05 vpoet 阅读(189) 评论(0) 推荐(0)
摘要: 视观表 (View) 可以被当作是虚拟表格。它跟表格的不同是,表格中有实际储存资料,而视观表是建立在表格之上的一个架构,它本身并不实际储存资料。建立一个视观表的语法如下:CREATE VIEW "VIEW_NAME" AS "SQL 语句";"SQL 语句" 可以是任何一个我们在这个教材中有提到的 ... 阅读全文
posted @ 2014-12-15 18:56 vpoet 阅读(192) 评论(0) 推荐(0)
摘要: 表格是数据库中储存资料的基本架构。在绝大部份的情况下,数据库厂商不可能知道您需要如何储存您的资料,所以通常您会需要自己在数据库中建立表格。虽然许多数据库工具可以让您在不需用到 SQL 的情况下建立表格,不过由于表格是一个最基本的架构,我们决定包括CREATE TABLE的语法在这个网站中。在我们跳入... 阅读全文
posted @ 2014-12-15 18:52 vpoet 阅读(467) 评论(0) 推荐(0)
摘要: SQL 中的 TRIM 函数是用来移除掉一个字串中的字头或字尾。最常见的用途是移除字首或字尾的空白。这个函数在不同的资料库中有不同的名称:MySQL: TRIM( ), RTRIM( ), LTRIM( )Oracle: RTRIM( ), LTRIM( )SQL Server: RTRIM( ),... 阅读全文
posted @ 2014-12-15 18:49 vpoet 阅读(157) 评论(0) 推荐(0)
摘要: SQL 中的 substring 函数是用来抓出一个栏位资料中的其中一部分。这个函数的名称在不同的资料库中不完全一样:MySQL: SUBSTR( ), SUBSTRING( )Oracle: SUBSTR( )SQL Server: SUBSTRING( )最常用到的方式如下 (在这里我们用 SU... 阅读全文
posted @ 2014-12-15 18:44 vpoet 阅读(190) 评论(0) 推荐(0)
摘要: 有的时候,我们有需要将由不同栏位获得的资料串连在一起。每一种资料库都有提供方法来达到这个目的:MySQL: CONCAT( )Oracle: CONCAT( ), ||SQL Server: +CONCAT( )的语法如下:CONCAT (字串1, 字串2, 字串3, ...)将字串1、字串2、字串... 阅读全文
posted @ 2014-12-15 17:42 vpoet 阅读(204) 评论(0) 推荐(0)
摘要: UNION ALL这个指令的目的也是要将两个 SQL 语句的结果合并在一起。UNION ALL和UNION不同之处在于UNION ALL会将每一笔符合条件的资料都列出来,无论资料值有无重复。UNION ALL的语法如下:[SQL 语句 1]UNION ALL[SQL 语句 2];我们用和上一页同样的... 阅读全文
posted @ 2014-12-15 17:40 vpoet 阅读(220) 评论(0) 推荐(0)
摘要: UNION指令的目的是将两个 SQL 语句的结果合并起来。从这个角度来看,UNION跟JOIN有些许类似,因为这两个指令都可以由多个表格中撷取资料。UNION的一个限制是两个 SQL 语句所产生的栏位需要是同样的资料种类。另外,当我们用UNION这个指令时,我们只会看到不同的资料值 (类似SELEC... 阅读全文
posted @ 2014-12-15 17:31 vpoet 阅读(201) 评论(0) 推荐(0)
摘要: 我们可以在一个 SQL 语句中放入另一个 SQL 语句。当我们在WHERE子句或HAVING子句中插入另一个 SQL 语句时,我们就有一个subquery的架构。Subquery的作用是什么呢?第一,它可以被用来连接表格。另外,有的时候subquery是唯一能够连接两个表格的方式。Subquery的... 阅读全文
posted @ 2014-12-15 17:24 vpoet 阅读(185) 评论(0) 推荐(0)
摘要: 之前我们看到的左连接 (left join),又称内部连接 (inner join)。在这个情况下,要两个表格内都有同样的值,那一笔资料才会被选出。那如果我们想要列出一个表格中每一笔的资料,无论它的值在另一个表格中有没有出现,那该怎么办呢?在这个时候,我们就需要用到SQL OUTER JOIN(外部... 阅读全文
posted @ 2014-12-15 17:07 vpoet 阅读(228) 评论(0) 推荐(0)
摘要: 现在我们介绍连接 (Join) 的概念。要了解连接,我们需要用到许多我们之前已介绍过的指令。我们先假设我们有以下的两个表格,Store_Information表格Store_NameSalesTxn_DateLos Angeles150005-Jan-1999San Diego25007-Jan-1... 阅读全文
posted @ 2014-12-15 17:04 vpoet 阅读(178) 评论(0) 推荐(0)
摘要: 接下来,我们讨论 alias (别名) 在 SQL 上的用处。最常用到的别名有两种: 栏位别名及表格别名。简单地来说,栏位别名的目的是为了让 SQL 产生的结果易读。在之前的例子中,每当我们有营业额总合时,栏位名都是 SUM(Sales)。 虽然在这个情况下没有什么问题,可是如果这个栏位不是一个简单... 阅读全文
posted @ 2014-12-15 16:43 vpoet 阅读(230) 评论(0) 推荐(0)
摘要: 那我们如何对函数产生的值来设定条件呢?举例来说,我们可能只需要知道哪些店的营业额有超过 $1,500。在这个情况下,我们不能使用WHERE的指令。那要怎么办呢?很幸运地,SQL 有提供一个HAVING的指令,而我们就可以用这个指令来达到这个目标。HAVING子句通常是在一个 SQL 句子的最后。一个... 阅读全文
posted @ 2014-12-15 16:39 vpoet 阅读(277) 评论(0) 推荐(0)
摘要: 我们现在回到函数上。记得我们用SUM这个指令来算出所有的 Sales (营业额)吧!如果我们的需求变成是要算出每一间店 (Store_Name) 的营业额 (Sales),那怎么办呢?在这个情况下,我们要做到两件事:第一,我们对于 Store_Name 及 Sales 这两个栏位都要选出。第二,我们... 阅读全文
posted @ 2014-12-15 16:34 vpoet 阅读(313) 评论(0) 推荐(0)
摘要: 在上一页有提到,COUNT是函数之一。由于它的使用广泛,我们在这里特别提出来讨论。基本上,COUNT让我们能够数出在表格中有多少笔资料被选出来。它的语法是: SELECT COUNT("栏位名")FROM "表格名";举例来说,若我们要找出我们的示范表格中有几笔 store_name 栏不是空白的资... 阅读全文
posted @ 2014-12-15 16:29 vpoet 阅读(282) 评论(0) 推荐(0)