SQL查询刚開始学习的人指南读书笔记(三)值表达式
CHAPTER 5 Getting More Than Simple Columns
Intro Value expression,it contains column names, literal values, functions, or other value
expressions
The type of data
The SQL Standard defines seven general categories of types of data—character,
national character, binary, numeric, Boolean, datetime, and interval.
The national character data type is the same as the character data type except that it draws its characters from ISO-defined foreign language
character sets.
BOOLEAN数据类型能够使用TINYINT存储.
CAST
Changing Data Types
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc29saWRkcmVhbTY2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
data_type须要查看详细数据库实现文档,比方MySQL
The type for
the result can be one of the following values:
- BINARY[(N)]
- CHAR[(N)]
源文档 <http://dev.mysql.com/doc/refman/5.0/en/cast-functions.html#function_cast>
比方
SELECT OrderNumber, OrderDate, ShipDate,
CAST(ShipDate– OrderDate AS INTEGER)
AS DaysElapsed
FROM Orders
在MySQL中须要转为
SELECT OrderNumber, OrderDate, ShipDate,
CAST(ShipDate- OrderDate AS DECIMAL)
AS DaysElapsed
FROM Orders
Literal Value
分为字符串常量值,数值常量值和日期常量值.
假设使用单引號包括字符串,字符串中包括单引號,字符串中的单引號请使用两次以示与引用的单引號差别开来.
SQL 'The Vendor"s name is: '
Displayed as The Vendor's name is:
Types of Expressions
CONCATENATION
SQL字符串串接
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc29saWRkcmVhbTY2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
❖ Note Of the major database systems,we found that only IBM’s DB2 and
Informix and Oracle’s Oracle support the SQL Standard operator for concatenation.
Microsoft Office Access supports & and + as concatenation
operators,Microsoft SQL Server and Ingres support +, and in MySQL you
must use the CONCAT function. In all the examples in the book,we use the
SQL Standard || operator. In the sample databases on the CD,we use the
appropriate operator for each database type (Microsoft Access, Microsoft
SQLServer, and MySQL).
由上图可知SQL标准字符串串接用||。可是在MySQL使用会被当作逻辑运算符。
MySQL使用concat内建函数串接字符串。而有的数据库使用直观的+串接字符串.
DATE AND TIME ARITHMETIC
MySQL须要将日期常量值转为对应类型再做计算,另外须要使用对应的日期函数计算
CAST('2016-11-22'AS DATE)
CAST('03:30:25'AS TIME)
CAST('2008-09-2914:25:00' AS DATETIME)
比方
SELECT StfLastName || ', ' || StfFirstName AS Staff,
DateHired,
CAST(CAST('2007-10-01'- DateHired AS INTEGER)
/365 AS INTEGER)
AS YearsWithSchool
FROM Staff
ORDER BY StfLastName, StfFirstName
在MySQL中转为
SELECT CONCAT(StfLastName , ', ' , StfFirstName) AS Staff,
DateHired,
CAST(DATEDIFF(CAST('1990-01-11'AS date) , DateHired )/365 as decimal)
AS YearsWithSchool
FROM Staff
ORDER BY StfLastName, StfFirstName
That"Nothing" Value:Null
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc29saWRkcmVhbTY2/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
推断Value Expression是否为NULL的时候请不要使用ValueExpression
= NULL,这是常犯的小错误.
SQL查询刚開始学习的人指南读书笔记(三)值表达式的更多相关文章
- SQL查询刚開始学习的人指南读书笔记(二)创建SQL查询
PARTII: SQL Basics CHAPTER 4Creating a Simple Query 介绍一种怎样创建SQL语句的技术--"Request/Translation/Clea ...
- SQL查询刚開始学习的人指南读书笔记(一)关系数据库和SQL介绍
PART I:Relational Databases and SQL Chapter2, Ensuring Your Database Structure IsSound. 数据库设计准则 什么是关 ...
- oracle刚開始学习的人经常使用操作100问
oracle刚開始学习的人经常使用操作100问 1. Oracle安装完毕后的初始口令? internal/oracle sys/change_on_install system/manager ...
- wxWidgets刚開始学习的人导引(3)——wxWidgets应用程序初体验
wxWidgets刚開始学习的人导引全文件夹 PDF版及附件下载 1 前言2 下载.安装wxWidgets3 wxWidgets应用程序初体验4 wxWidgets学习资料及利用方法指导5 用wx ...
- wxWidgets刚開始学习的人导引(2)——下载、安装wxWidgets
wxWidgets刚開始学习的人导引全目录 PDF版及附件下载 1 前言2 下载.安装wxWidgets3 wxWidgets应用程序初体验4 wxWidgets学习资料及利用方法指导5 用wxS ...
- wxWidgets刚開始学习的人导引(4)——wxWidgets学习资料及利用方法指导
wxWidgets刚開始学习的人导引全文件夹 PDF版及附件下载 1 前言2 下载.安装wxWidgets3 wxWidgets应用程序初体验4 wxWidgets学习资料及利用方法指导5 用wx ...
- 刚開始学习的人制作VMOS场效应管小功放
VMOS场效应管既有电子管的长处又有晶体管的长处,用它制作的功率放大器声音醇厚.甜美,动态范围大.频率响应好.因此近年来在音响设备中得到了广泛应用. 大功率的场效应管功率放大器.电.路比較复杂.制作和 ...
- wxWidgets刚開始学习的人导引(1)——前言
wxWidgets刚開始学习的人导引全文件夹 PDF版及附件下载 1 前言2 下载.安装wxWidgets3 wxWidgets应用程序初体验4 wxWidgets学习资料及利用方法指导5 用wx ...
- 对于刚開始学习的人Xcode最经常使用的快捷键
对于刚開始学习的人而言,好多人都是直接使用鼠标进行操作.差点儿非常少使用快捷键,从而再练习编程时比别人慢那么一点,今天就把刚開始学习的人最经常使用的几个快捷键给大家总结下,当然欢迎大家补充. (1)c ...
随机推荐
- Python图像处理库PIL从入门到精通
https://blog.csdn.net/column/details/pythonpil.html 示例: from PIL import Image import pytesseract pyt ...
- linux环境内存分配原理 mallocinfo【转】
转自:http://www.cnblogs.com/dongzhiquan/p/5621906.html Linux的虚拟内存管理有几个关键概念: Linux 虚拟地址空间如何分布?malloc和fr ...
- 计蒜客 UCloud 的安全秘钥(随机化+Hash)
题目链接 UCloud 的安全秘钥 对于简单的版本,我们直接枚举每个子序列,然后sort一下判断是否完全一样即可. #include <bits/stdc++.h> using names ...
- 《Python基础教程读书笔记》
第1章 快速构造:基础知识 1.2交互式构造器 不强制分号,一行就是一行.可以加上分号 1.4数字和表达式 加.减.乘.除.整除.求余.指数.取反(-例如-2**2,**的优先级比-大) from _ ...
- 洛谷—— P2895 [USACO08FEB]流星雨Meteor Shower
P2895 [USACO08FEB]流星雨Meteor Shower 题目描述 Bessie hears that an extraordinary meteor shower is coming; ...
- NEERC15
2015-2016 ACM-ICPC Northeastern European Regional Contest 再开一个新坑吧 目前姿势有限,C.H.I仍然处于弃坑状态 代码戳这里 Problem ...
- [ZJOI 2016] 小星星
4455: [Zjoi2016]小星星 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 653 Solved: 400[Submit][Status] ...
- PropertyPlaceholderConfigurer 基本用法
目录 一.PropertyPlaceholderConfigurer 的继承体系 二.PropertyPlaceholderConfigurer 的基本概念 三.PropertyPlaceholder ...
- Ubuntu 16.04下使用Wine安装正则表达式工具RegexBuddy 4
说明: 1.使用的Wine版本是深度出品(Deepin),已经精简了很多没用的配置,使启动能非常快,占用资源小. 2.关于没有.wine文件夹的解决方法:在命令行上运行winecfg: 下载: (链接 ...
- GOF 23种设计摩搜-建造者模式
• 场景: – 我们要建造一个复杂的产品.比如:神州飞船,Iphone.这个复杂的产品的创建.有这样 一个问题需要处理: • 装配这些子组件是不是有个步骤问题? – 实际开发中,我们所需要的对象构建时 ...