`
longgangbai
  • 浏览: 7344253 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

一个SQL引发的函数和SQL BETWEEN 操作符引发的血案

阅读更多

  在项目中flex 采用Oracle数据库查询的数据库;

  在flex时间获取星期:

   var today:Date=new Date(2009,9,16)  //来自数据库的周末标识
        var weekmark:String=roomTypePrice.WEEKEND_MARK;

  //获取当前的时间星期数 2009-09-16 获取结果  3

        var isweekmark:String=String(today.getDay());

  

 

  在Oracle数据库价格查询时,使用oralce数据库函数得到星期:

RA.CHECK_IN_DATE值 2009-09-16 

 TO_CHAR(RA.CHECK_IN_DATE,'D'))  获取结果 4

 

一个严重的误区:

在SQL中:

BETWEEN 操作符在 WHERE 子句中使用,作用是选取介于两个值之间的数据范围。(包括开始但不包括结尾)

 

 

在Oracle中:

BETWEEN 操作符在 WHERE 子句中使用,作用是选取介于两个值之间的数据范围。。(包括开始也包括结尾)

 

 

造成数据不正确.....

 

BETWEEN 操作符在 WHERE 子句中使用,作用是选取介于两个值之间的数据范围。

BETWEEN 操作符

操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。

SQL BETWEEN 语法

SELECT column_name(s)
FROM table_name
WHERE column_name
BETWEEN value1 AND value2

原始的表 (在实例中使用:)

Persons 表:

Id LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing
4 Gates Bill Xuanwumen 10 Beijing

BETWEEN 操作符实例

如需以字母顺序显示介于 "Adams"(包括)和 "Carter"(不包括)之间的人,请使用下面的 SQL:

SELECT * FROM Persons
WHERE LastName
BETWEEN 'Adams' AND 'Carter'

结果集:

Id LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York

重要事项:不同的数据库对 BETWEEN...AND 操作符的处理方式是有差异的。某些数据库会列出介于 "Adams" 和 "Carter" 之间的人,但不包括 "Adams" 和 "Carter" ;某些数据库会列出介于 "Adams" 和 "Carter" 之间并包括 "Adams" 和 "Carter" 的人;而另一些数据库会列出介于 "Adams" 和 "Carter" 之间的人,包括 "Adams" ,但不包括 "Carter" 。

所以,请检查你的数据库是如何处理 BETWEEN....AND 操作符的!

实例 2

如需使用上面的例子显示范围之外的人,请使用 NOT 操作符:

SELECT * FROM Persons
WHERE LastName
NOT BETWEEN 'Adams' AND 'Carter'

结果集:

Id LastName FirstName Address City
3 Carter Thomas Changan Street Beijing
4 Gates Bill Xuanwumen 10 Beijing

  

分享到:
评论

相关推荐

    SQL函数与操作符入门数据分析师-编程语言与工具

    文中提供了多个示例,帮助读者更好地理解和应用这些函数和操作符。 适合人群:数据库开发者、数据分析师、SQL初学者。 使用场景及目标:适用于数据库查询和数据处理,通过使用SQL函数和操作符,可以更高效地进行数据...

    sqlserver 函数大全

    这些函数可以分为多个类别,包括聚合函数、配置函数、转换函数、加密函数、游标函数、日期和时间函数、数学函数、元数据函数、排名函数、行集函数、安全函数、字符串函数、系统函数、系统统计函数和文本和图像函数。...

    Oracle SQL 内置函数大全

    Oracle SQL 内置函数大全 SQL中的单记录函数 给出整数,返回对应的字符 连接两个字符串 增加或减去月份 用于对查询到的结果进行排序输出

    SQL常用函数汇总(比较详细)

    聚合函数执行的操作是将多个值合并为一个值。例如 COUNT、SUM、MIN 和 MAX 等函数。这些函数通常用于对查询结果进行分组和聚合统计。 转换函数 转换函数将值从一种数据类型转换为另一种。例如 CONVERT 函数可以将 ...

    SQL表值函数

    SQL表值函数是一个用户定义的函数,它可以返回一个表结构的结果集。这种函数可以极大减少程序代码,非常有用。 二、SQL表值函数的优点 SQL表值函数有很多优点,包括: * 可以减少程序代码量 * 可以提高查询效率 *...

    SqlServer自定义多参数聚合函数实例代码

    例如,你可以创建一个函数计算两个字段的乘积平均值。 `ClrAggregates.sln`是一个Visual Studio解决方案文件,它包含了整个项目的配置和引用信息。打开这个文件,我们可以看到项目的结构和依赖关系。通常,这个解决...

    数据库应用(SQL Server):11 操作符和函数.ppt

    本资源主要讨论了SQL Server数据库中各种操作符和函数的应用,包括数学操作符、字符操作符、日期和时间操作符等。 数学操作符和函数: 在SQL Server中,数学操作符和函数可以对数字进行各种操作。例如: * 数学...

    Oracle_PL(SQL)单行函数和组函数及使用

    ### Oracle_PL(SQL)单行函数和组函数及使用 #### 一、概述 在Oracle数据库中,SQL 和 PL/SQL 提供了大量的内置函数,这些函数可以极大地提高开发效率和简化查询逻辑。根据处理数据的不同方式,这些函数可以分为...

    SQL查询和SQL函数.pptx

    在“SQL查询和SQL函数.pptx”这份资料中,主要讲解了SQL查询中的操作符和函数,涵盖了从基础的算术、比较、逻辑操作符到集合操作符,以及连接操作符的使用方法,还提到了SQL函数的分类和应用。 1. **SQL查询操作符*...

    sqlserver函数大全

    sqlserver函数详细说明,可以作为学习SQLServer的参考资料。

    sql函数大全及详解

    根据返回值的类型,Transact-SQL 型自定义函数可以分为标量值型自定义函数和表值型自定义函数两种类型。 2. CLR 型自定义函数 CLR 型自定义函数是根据 SQL Server 2005 提供的 CLR 功能,数据库管理人员和开发人员...

    SQL脚本函数 16进制转换为10进制

    该脚本定义了一个名为`fn_HexToInt`的SQL函数,其主要功能是将输入的十六进制字符串转换为等价的十进制整数。以下是对该脚本的详细解析: 1. **函数定义**: ```sql CREATE FUNCTION [dbo].[fn_HexToInt] (@s ...

    oracle 和sql Server 函数对比

    - SQL Server使用`CONCAT`函数,Oracle使用`||`操作符。 - 示例:SQL Server中`SELECT CONCAT('11', '22', '33')`;Oracle中`SELECT '11' || '22' || '33' FROM DUAL`。 25. **子字符串定位** - SQL Server使用`...

    SQL 字符串处理函数

    SQL 字符串处理函数 获取指定的字符

    一条SQL引发的“血案”:与SQL优化相关的4个案例.docx

    一条看似简单的SQL语句,若未经充分优化,就有可能成为系统性能的瓶颈,甚至引发所谓的“血案”——即一系列由于性能问题导致的严重后果。本文将通过四个真实的案例,深入探讨与SQL优化相关的各个方面,以期揭示其...

    操作符及sql函数PPT课件.pptx

    本课件主要围绕SQL的操作符和函数展开,帮助学习者掌握其核心概念并能熟练运用。 首先,SQL命令可以分为四大类:数据定义语言(DDL)、数据操纵语言(DML)、事务控制语言(TCL)和数据控制语言(DCL)。DDL用于...

    Oracle_Sql_中常用字符串处理函数

    Oracle Sql 提供了 REPLACE() 函数,用于将字符串中的某个字符替换为另一个字符。 示例:SELECT REPLACE('abcdce', 'bc', 'test') FROM dual; -- 返回 atestdce 6. ASCII 码函数 Oracle Sql 提供了 ASCII() 函数...

    【SQL高级(十)】【SQL Date 函数+SQL Date 数据类型】

    文章目录SQL Date 函数MySQL Date 函数NOW() 函数CURDATE() 函数CURTIME() 函数DATE() 函数EXTRACT() 函数DATE_ADD() 函数DATE_SUB() 函数DATEDIFF() 函数DATE_FORMAT() 函数SQL Server Date 函数GETDATE() 函数...

    sqlserver snowflake 函数

    使用c# 编写的 sqlserver udf 雪花函数 编译环境为 .net framework 4.5 目标数据库为 sqlserver2012 实际可以在 sqlserver2012-2019 上发布使用 注: 1. 需要开启多个实例权限 2. 需要开启单数据库信任 3. 该程序...

    SQL返回表的函数

    SQLServer 返回表的函数在网上有很多,但是大部分都是比较杂的,比较生硬难懂,而且又要跟数据车上关系,我的这个方法没有用到数据,用的是时间,输入一个时间,自动返回一表,表里面的内容是每个季度每个月的某个...

Global site tag (gtag.js) - Google Analytics