`
bei-jin-520
  • 浏览: 110573 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

SQL备忘录

阅读更多

SQL备忘录:

SQL 函数   AVG (平均) COUNT (计数) MAX (最大值) MIN (最小值) SUM (总合) 

 

UNION 指令的目的是将两个 SQL 语句的结果合并起来。

 

UNION ALL 这个指令的目的也是要将两个 SQL 语句的结果合并在一起。

UNION ALLUNION 不同之处在于 UNION ALL 会将每一笔符合条件的资料都列出来,无论资料值有无重复。 和 UNION 指令类似,

INTERSECT 也是对两个 SQL 语句所产生的结果做处理的。不同的地方是, UNION 基本上是一个 OR (如果这个值存在于第一句或是第二句,它就会被选出),而 INTERSECT 则比较像 AND ( 这个值要存在于第一句和第二句才会被选出)。 UNION 是联集,而 INTERSECT 是交集

MINUS 指令是运用在两个 SQL 语句上。它先找出第一个 SQL 语句所产生的结果,然后看这些结果有没有在第二个 SQL 语句的结果中。如果有的话,那这一笔资料就被去除,而不会在最后的结果中出现。如果第二个 SQL 语句所产生的结果并没有存在于第一个 SQL 语句所产生的结果内,那这笔资料就被抛弃。

 

而我们要找出哪几天有店面交易和网络交易。要达到这个目的,我们用以下的 SQL 语句:

假设我们有以下的两个表格,

 

Store_Information 表格

store_name Sales Date
Los Angeles $1500 Jan-05-1999
San Diego $250 Jan-07-1999
Los Angeles $300 Jan-08-1999
Boston $700 Jan-08-1999

 

Internet Sales 表格
Date Sales
Jan-07-1999 $250
Jan-10-1999 $535
Jan-11-1999 $320
Jan-12-1999 $750

 

 

SELECT Date FROM Store_Information
INTERSECT
SELECT Date FROM Internet_Sales

结果:

 

Date
Jan-07-1999

 

请注意,在 INTERSECT 指令下,不同的值只会被列出一次。

 

而我们要知道有哪几天是有店面营业额而没有网络营业额的。要达到这个目的,我们用以下的 SQL 语句:

SELECT Date FROM Store_Information
MINUS
SELECT Date FROM Internet_Sales

结果:

 

Date
Jan-05-1999
Jan-08-1999

 

 

有的时候,我们有需要将由不同栏位获得的资料串连在一起。每一种资料库都有提供方法来达到这个目的:

  • MySQL: CONCAT()
  • Oracle: CONCAT(), ||
  • SQL Server: +

CONCAT() 的语法如下:

CONCAT(字串1, 字串2, 字串3, ...): 将字串1、字串2、字串3,等字串连在一起。请注意,Oracle的CONCAT()只允许两个参数;换言之,一次只能将两个字串串连起来。不过,在Oracle中,我们可以用'||'来一次串连多个字串。

来看几个例子。假设我们有以下的表格:

Geography 表格

region_name store_name
East Boston
East New York
West Los Angeles
West San Diego

 

例子1:

MySQL/Oracle:
SELECT CONCAT(region_name,store_name) FROM Geography
WHERE store_name = 'Boston';

结果

'EastBoston'

例子2:

Oracle:
SELECT region_name || ' ' || store_name FROM Geography
WHERE store_name = 'Boston';

结果

'East Boston'

例子3:

SQL Server:
SELECT region_name + ' ' + store_name FROM Geography
WHERE store_name = 'Boston';

结果

'East Boston'

 

SQL 中的 substring 函数是用来抓出一个栏位资料中的其中一部分。这个函数的名称在不同的资料库中不完全一样:

  • MySQL: SUBSTR(), SUBSTRING()
  • Oracle: SUBSTR()
  • SQL Server: SUBSTRING()

最常用到的方式如下 (在这里我们用SUBSTR()为例):

SUBSTR(str,pos): 由<str>中,选出所有从第<pos>位置开始的字元。请注意,这个语法不适用于SQL Server上。

SUBSTR(str,pos,len): 由<str>中的第<pos>位置开始,选出接下去的<len>个字元。

假设我们有以下的表格:

Geography 表格

region_name store_name
East Boston
East New York
West Los Angeles
West San Diego

 

例1:

SELECT SUBSTR(store_name, 3)
FROM Geography
WHERE store_name = 'Los Angeles';

结果:

's Angeles'

例2:

SELECT SUBSTR(store_name,2,4)
FROM Geography
WHERE store_name = 'San Diego';

结果:

'an D'

 

 

LIKE 是另一个在 WHERE 子句中会用到的指令。基本上,LIKE 能让我们依据一个套式 (pattern) 来找出我们要的资料。相对来说,在运用 IN 的时候,我们完全地知道我们需要的条件;在运用 BETWEEN 的时候,我们则是列出一个范围。 LIKE 的语法如下:

SELECT "栏位名"
FROM "表格名"
WHERE "栏位名" LIKE {套式}

{套式} 经常包括野卡 (wildcard). 以下是几个例子:

 

  • 'A_Z': 所有以 'A' 起头,另一个任何值的字原,且以 'Z' 为结尾的字串。 'ABZ' 和 'A2Z' 都符合这一个模式,而 'AKKZ' 并不符合 (因为在 A 和 Z 之间有两个字原,而不是一个字原)。

     

  • 'ABC%': 所有以 'ABC' 起头的字串。举例来说,'ABCD' 和 'ABCABC' 都符合这个套式。

     

  • '%XYZ': 所有以 'XYZ' 结尾的字串。举例来说,'WXYZ' 和 'ZZXYZ' 都符合这个套式。

     

  • '%AN%': 所有含有 'AN' 这个套式的字串。举例来说, 'LOS ANGELES' 和 'SAN FRANCISCO' 都符合这个套式。

    我们将以上最后一个例子用在我们的 Store_Information 表格上:

    Store_Information 表格

    store_name Sales Date
    LOS ANGELES $1500 Jan-05-1999
    SAN DIEGO $250 Jan-07-1999
    SAN FRANCISCO $300 Jan-08-1999
    BOSTON $700 Jan-08-1999

     

    我們就打入,

    SELECT *
    FROM Store_Information
    WHERE store_name LIKE '%AN%'

  •  

     

     

    分享到:
    评论

    相关推荐

      SQL语句备忘录及使用技巧

      在IT领域,SQL(Structured Query Language)是一种用于管理和操作关系数据库的强大工具。它允许用户创建、更新、查询和管理数据库。以下是对标题和描述中提到的SQL知识点的详细阐述: 一、基础 1. **创建数据库**...

      vc++ SqlServer 公司备忘录系统

      《VC++与SQL Server构建公司备忘录系统详解》 在信息技术高度发展的今天,公司备忘录系统已经成为企业管理日常事务、提升工作效率的重要工具。本文将深入探讨如何利用Microsoft的编程语言VC++和数据库管理系统SQL ...

      Android 备忘录源码.rar

      代码中的“Android 备忘录源码”可能包含了SQLiteOpenHelper的子类,用于管理数据库版本和操作SQL语句。 3. **内容提供者(Content Provider)**:为了与其他应用共享数据,备忘录应用可能会使用Content Provider。...

      基于SpringBoot+Vue的备忘录系统源码+sql数据库(课程大作业).zip

      基于SpringBoot+Vue的备忘录系统源码+sql数据库(课程大作业).zip 基于SpringBoot+Vue的备忘录系统源码+sql数据库(课程大作业).zip 基于SpringBoot+Vue的备忘录系统源码+sql数据库(课程大作业).zip 【资源说明】 项目...

      企业备忘录管理系统(c++和sql server实现)

      《企业备忘录管理系统——C++与SQL Server的完美结合》 在当今信息化时代,企业的日常运作离不开各种信息管理工具。本文将详细探讨一个由C++编程语言与SQL Server数据库系统共同实现的企业备忘录管理系统,它为中小...

      企业备忘录管理系统(C++\sql)

      企业备忘录管理系统是一款专为企业内部沟通和信息记录设计的应用,它结合了C++编程语言的前台界面和SQL数据库管理系统的后台数据存储。这个系统旨在提高工作效率,方便员工记录、查询和分享工作中的重要事项,确保...

      Android课程设计--便捷备忘录

      **Android课程设计--便捷备忘录** 在移动应用开发领域,Android系统因其开源特性与广泛的应用,成为开发者的重要平台。本项目"Android课程设计--便捷备忘录"旨在教授学生如何利用Android Studio进行应用程序开发,...

      C#自制桌面备忘录(自制日历)

      本项目名为"C#自制桌面备忘录(自制日历)",采用C#编程语言和Visual Studio 2012开发环境,结合Microsoft SQL Server 2012作为数据存储平台,为用户提供了高效、便捷的日程管理功能。 一、C#语言基础 C#是微软推出...

      java+Mysql开发的备忘录系统

      使用SQL(结构化查询语言)进行数据操作,如INSERT插入新的备忘录,UPDATE修改已有的,SELECT查询特定的备忘录,以及DELETE删除不再需要的条目。 在功能实现上,系统提供以下关键操作: 1. 添加备忘录:用户可以...

      毕业设计基于JavaWeb实现的一个备忘录系统项目源码.zip

      毕业设计基于JavaWeb实现的一个备忘录系统项目源码。难度适中,新手自己可操作 备忘录 介绍 后端部分基于Servlet、Jdbc实现. 前端部分基于Layui、jqury实现。 一个简单的前后端分离Demo,前后端交互JSON数据格式 ...

      Android源码——备忘录源码.zip

      开发者需要创建一个SQLiteOpenHelper的子类,用于数据库的创建和版本管理,同时提供SQL语句来操作数据,例如,CREATE TABLE语句用于创建备忘录表,INSERT语句用于添加新的备忘录,UPDATE和DELETE语句用于更新和删除...

      备忘录APP,记事本APP

      【标题】备忘录APP与记事本APP的开发与实现 在当今信息化社会,备忘录和记事本应用程序已经成为智能手机用户不可或缺的工具。它们为用户提供了一个方便、快捷的方式来记录日常生活中的各种事项,无论是待办任务、...

      VC++企业备忘录管理系统

      这个系统集成了身份验证、成员信息管理、类型管理、备忘录信息管理和查询管理等多个功能模块,通过与SQL Server数据库的紧密结合,实现了数据的安全存储和快速检索,极大地提升了工作效率。 首先,身份验证是系统的...

      asp在线备忘录系统

      【ASP在线备忘录系统详解】 ASP(Active Server Pages)是一种由微软开发的服务器端脚本环境,用于创建动态交互式网页。它允许开发者在HTML中嵌入脚本语言,以便在服务器上执行,从而生成动态内容。在这个“ASP在线...

      android备忘录源码

      3. 数据库Helper类:实现了SQLite数据库的创建、升级以及与备忘录相关的SQL操作。 4. 数据模型类:定义了备忘录实体,包括字段和getter/setter方法。 5. Dao接口和实现类:定义了对数据库的操作,如insert、update、...

      备忘录系统

      2. 删除备忘录:系统提供了一个删除功能,用户可以选择要删除的备忘录,系统在后台通过SQL语句将选定的备忘录标记为已删除,而非直接从数据库中移除。 3. 查看与管理:用户可以浏览所有备忘录,搜索特定内容,还可以...

      iOS 备忘录小程序

      在iOS开发领域,备忘录应用是一个常见的项目,它能够帮助用户记录日常生活、工作中的重要信息。本项目名为“iOS备忘录小程序”,是一个自编的简易备忘录应用程序示例,特别适合初学者用来学习iOS开发,尤其是数据库...

      C#备忘录数据库代码

      在IT行业中,数据库是存储和管理数据的核心工具,而在C#编程环境中,我们可以利用各种数据库技术来构建备忘录应用程序。C#备忘录数据库代码通常涉及到如何在C#中与数据库进行交互,以实现创建、读取、更新和删除...

      企业备忘录管理系统

      《企业备忘录管理系统》是基于Visual C++编程语言和SQL Server数据库技术开发的一款实用工具,旨在提升企业的信息管理效率。这款系统集成了多种功能,为企业的日常事务处理提供了便捷的解决方案。 首先,Visual C++...

    Global site tag (gtag.js) - Google Analytics