云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > sql高级编程3

sql高级编程3

  • 62 次阅读
  • 3 次下载
  • 2025/6/1 2:28:06

SQL 更新视图

您可以使用下面的语法来更新视图:

SQL CREATE OR REPLACE VIEW Syntax CREATE OR REPLACE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition

现在,我们希望向 \视图添加 \列。我们将通过下列 SQL 更新视图: CREATE VIEW [Current Product List] AS SELECT ProductID,ProductName,Category FROM Products

WHERE Discontinued=No

SQL 撤销视图

您可以通过 DROP VIEW 命令来删除视图。 DROP VIEW view_name

6、SQL Date 函数

MySQL Date 函数:下面的表格列出了 MySQL 中最重要的内建日期函数:

函数 描述 NOW()返回当前的日期和时间 CURDATE()返回当前的日期 CURTIME()返回当前的时间 DATE()提取日期或日期/时间表达式的日期部分 EXTRACT()返回日期/时间按的单独部分 DATE_ADD()给日期添加指定的时间间隔 DATE_SUB()从日期减去指定的时间间隔 DATEDIFF()返回两个日期之间的天数 DATE_FORMAT()用不同的格式显示日期/时间

SQL Date 数据类型

MySQL 使用下列数据类型在数据库中存储日期或日期/时间值:

? ? ? ?

DATE - 格式 YYYY-MM-DD

DATETIME - 格式: YYYY-MM-DD HH:MM:SS TIMESTAMP - 格式: YYYY-MM-DD HH:MM:SS YEAR - 格式 YYYY 或 YY

6、SQL NULL 值:NULL 值是遗漏的未知数据。 默认地,表的列可以存放 NULL 值。

SQL NULL 值:

如果表中的某个列是可选的,那么我们可以在不向该列添加值的情况下插入新记录或更新已有的记录。这意味着该字段将以 NULL 值保存。 NULL 值的处理方式与其他值不同。 NULL 用作未知的或不适用的值的占位符。

无法使用比较运算符来测试 NULL 值,比如 =, <, 或者 <>。 我们必须使用 IS NULL 和 IS NOT NULL 操作符。 注释:无法比较 NULL 和 0;它们是不等价的。

SQL IS NULL

我们如何仅仅选取在 \列中带有 NULL 值的记录呢? 我们必须使用 IS NULL 操作符:

SELECT LastName,FirstName,Address FROM Persons WHERE Address IS NULL 结果集:

LastName FirstName Address Adams Carter John Thomas 提示:请始终使用 IS NULL 来查找 NULL 值。

SQL IS NOT NULL

我们如何选取在 \列中不带有 NULL 值的记录呢? 我们必须使用 IS NOT NULL 操作符:

SELECT LastName,FirstName,Address FROM Persons WHERE Address IS NOT NULL 结果集:

LastName FirstName Bush George Address Fifth Avenue SQL ISNULL()、NVL()、IFNULL() 和 COALESCE() 函数

请看下面的 \表:

P_Id ProductName UnitPrice UnitsInStock UnitsOnOrder 1 computer 699 25 15 2 3 printer telephone 365 280 36 159 57 假如 \是可选的,而且可以包含 NULL 值。 我们使用如下 SELECT 语句:

SELECT ProductName,UnitPrice*(UnitsInStock+UnitsOnOrder) FROM Products

在上面的例子中,如果有 \值是 NULL,那么结果是 NULL。 微软的 ISNULL() 函数用于规定如何处理 NULL 值。

NVL(), IFNULL() 和 COALESCE() 函数也可以达到相同的结果。 在这里,我们希望 NULL 值为 0。

下面,如果 \是 NULL,则不利于计算,因此如果值是 NULL 则 ISNULL() 返回 0。 SQL Server / MS Access

SELECT ProductName,UnitPrice*(UnitsInStock+ISNULL(UnitsOnOrder,0)) FROM Products Oracle

Oracle 没有 ISNULL() 函数。不过,我们可以使用 NVL() 函数达到相同的结果: SELECT ProductName,UnitPrice*(UnitsInStock+NVL(UnitsOnOrder,0)) FROM Products MySQL

MySQL 也拥有类似 ISNULL() 的函数。不过它的工作方式与微软的 ISNULL() 函数有点不同。 在 MySQL 中,我们可以使用 IFNULL() 函数,就像这样:

SELECT ProductName,UnitPrice*(UnitsInStock+IFNULL(UnitsOnOrder,0)) FROM Products

或者我们可以使用 COALESCE() 函数,就像这样:

SELECT ProductName,UnitPrice*(UnitsInStock+COALESCE(UnitsOnOrder,0)) FROM Products

搜索更多关于: sql高级编程3 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

SQL 更新视图 您可以使用下面的语法来更新视图: SQL CREATE OR REPLACE VIEW Syntax CREATE OR REPLACE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition 现在,我们希望向 \视图添加 \列。我们将通过下列 SQL 更新视图: CREATE VIEW [Current Product List] AS SELECT ProductID,ProductName,Category FROM Products WHERE Discontinued=No SQL 撤销视图 您可以通过 DROP VIEW 命令来删除视图。 DROP VIEW view_

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com