文档资料参考:
- 参考:http://www.w3school.com.cn/sql/sql_syntax.asp
- 参考:http://wiki.jikexueyuan.com/project/sql/
- 参考:https://dev.mysql.com/doc/refman/5.7/en/func-op-summary-ref.html(MySQL完整的函数列表)
- VS Code进行SQL美化参考:https://marketplace.visualstudio.com/items?itemName=sensourceinc.vscode-sql-beautify
软件下载参考:
- Oracle 12c:https://www.oracle.com/technetwork/database/enterprise-edition/downloads/database12c-win64-download-2297732.html
- Oracle 18c:http://download.oracle.com/otn/nt/oracle18c/180000/WINDOWS.X64_180000_client.zip (原文转载)
- plsql:https://download.csdn.net/download/hanzheng260561728/10633872 (原文转载)
- Navicat Premium 12:https://download.csdn.net/download/hanzheng260561728/10578397 (原文转载)
- SQL Developer:http://download.oracle.com/otn/java/sqldeveloper/sqldeveloper-18.2.0.183.1748-x64.zip (原文转载)
目录:
- 重要事项
- SQL 语句后面的分号?
- SQL DML 和 DDL
-
SQL 方法
- SQL select
- SQL distinct
- SQL where
- SQL and & or
- SQL order by
- SQL insert into
- SQL update
- SQL delete
- SQL top
- SQL like 操作符(通配符)
- SQL in 操作符
- SQL between 操作符
- SQL Alias(别名)
- SQL join
- SQL union 操作符
- SQL select into 语句
- SQL create database 语句
- SQL create table 语句
- SQL 约束 (Constraints) NOT NULL 约束
- SQL 约束 (Constraints) UNIQUE 约束
- SQL 约束 (Constraints) PRIMARY KEY 约束
- SQL 约束 (Constraints) FOREIGN KEY 约束
- SQL 约束 (Constraints) CHECK 约束
- SQL 约束 (Constraints) DEFAULT 约束
- SQL create index 语句
- SQL drop 语句
- SQL alter table 语句
- SQL auto_increment 字段
- SQL view (视图)
- SQL NULL函数:isnull()、NVL()、IFNULL() 和 COALESCE() 函数
- SQL 函数
- SQL group by 语句
- SQL having 语句
-
SQL 函数
- SQL Date 函数
-
合计函数(Aggregate functions)
- MS Access 中的合计函数
- 在 SQL Server 中的合计函数
-
Scalar 函数
- MS Access 中的 Scalar 函数
1、重要事项
一定要记住,SQL 对大小写不敏感!
2、SQL 语句后面的分号?
- 某些数据库系统要求在每条 SQL 命令的末端使用分号。在我们的教程中不使用分号。
- 分号是在数据库系统中分隔每条 SQL 语句的标准方法,这样就可以在对服务器的相同请求中执行一条以上的语句。
- 如果您使用的是 MS Access 和 SQL Server 2000,则不必在每条 SQL 语句之后使用分号,不过某些数据库软件要求必须使用分号。
3、SQL DML 和 DDL
可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。
SQL (结构化查询语言)是用于执行查询的语法。但是 SQL 语言也包含用于更新、插入和删除记录的语法。
查询和更新指令构成了 SQL 的 DML 部分:
- SELECT - 从数据库表中获取数据
- UPDATE - 更新数据库表中的数据
- DELETE - 从数据库表中删除数据
- INSERT INTO - 向数据库表中插入数据
SQL 的数据定义语言 (DDL) 部分使我们有能力创建或删除表格。我们也可以定义索引(键),规定表之间的链接,以及施加表间的约束。
SQL 中最重要的 DDL 语句:
- CREATE DATABASE - 创建新数据库
- ALTER DATABASE - 修改数据库
- CREATE TABLE - 创建新表
- ALTER TABLE - 变更(改变)数据库表
- DROP TABLE - 删除表
- CREATE INDEX - 创建索引(搜索键)
- DROP INDEX - 删除索引
4、SQL 方法
- SQL select
- SQL distinct:在表中,可能会包含重复值
- SQL where
where 子句中可用的运算符:操作符 描述 = 等于 <> 不等于 > 大于 < 小于 >= 大于等于 <= 小于等于 BETWEEN 在某个范围内 LIKE 搜索某种模式 注释:在某些版本的 SQL 中,操作符 <> 可以写为 !=。
- SQL and & or 运算符:and 和 or 可在 where 子语句中把两个或多个条件结合起来。
- SQL order by:用于对结果集进行排序。
希望按照降序对记录进行排序,可以使用 DESC 关键字
希望按照升序对记录进行排序,可以使用 ASC 关键字 - SQL insert into 语句
insert into 表名称 values(值1, 值2,....)
insert into table_name (列1, 列2,...) VALUES (值1, 值2,....) - SQL update 语句:用于修改表中的数据。
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值 - SQL delete 语句:用于删除表中的行。
DELETE FROM 表名称 WHERE 列名称 = 值
----------------------------------------------------------------------------------------------------------------- - SQL top 子句:用于规定要返回的记录的数目。
SELECT TOP number|percent column_name(s)
FROM table_name SELECT TOP 2 * FROM Persons -- 从 "Persons" 表中选取头两条记录
SELECT TOP 50 PERCENT * FROM Persons -- 从 "Persons" 表中选取 50% 的记录 -
SQL like 操作符:用于在 where 子句中搜索列中的制定模式。
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。
SQL 通配符必须与 LIKE 运算符一起使用。
在 SQL 中,可使用以下通配符:通配符 描述 % 替代一个或多个字符 _ 仅替代一个字符 [charlist] 字符列中的任何单一字符 [^charlist]
或者
[!charlist]
不在字符列中的任何单一字符 -
SQL in 操作符:用于我们在 where 子句中规定多个值。
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...) - SQL between 操作符:操作符 between ... and 会选取两个值之间的数据范围。这些值可以是数值、文本或者日期。
SELECT column_name(s)
FROM table_name
WHERE column_name
BETWEEN value1 AND value2 - SQL Alias(别名):通过使用SQL,可以为列名称和表名称指定别名(Alias)。
-- 表的 SQL Alias 语法
SELECT column_name(s)
FROM table_name
AS alias_name -- 列的 SQL Alias 语法
SELECT column_name AS alias_name
FROM table_name - SQL join:用于根据两个或多个表中的列之间的关系,从这些表中查询数据。
JOIN: 如果表中有至少一个匹配,则返回行(注释:INNER JOIN 与 JOIN 是相同的),INNER JOIN 关键字在表中存在至少一个匹配时返回行。如果 "Persons" 中的行在 "Orders" 中没有匹配,就不会列出这些行。
SELECT column_name(s)
FROM table_name1
INNER JOIN table_name2
ON table_name1.column_name=table_name2.column_nameLEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行,LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行(在某些数据库中, LEFT JOIN 称为 LEFT OUTER JOIN)。
SELECT column_name(s)
FROM table_name1
LEFT JOIN table_name2
ON table_name1.column_name=table_name2.column_nameRIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行,RIGHT JOIN 关键字会右表 (table_name2) 那里返回所有的行,即使在左表 (table_name1) 中没有匹配的行。
SELECT column_name(s)
FROM table_name1
RIGHT JOIN table_name2
ON table_name1.column_name=table_name2.column_nameFULL JOIN: 只要其中一个表中存在匹配,就返回行,只要其中某个表存在匹配,FULL JOIN 关键字就会返回行。
SELECT column_name(s)
FROM table_name1
FULL JOIN table_name2
ON table_name1.column_name=table_name2.column_name -
SQL union 操作符:用于合并两个或多个 SELECT 语句的结果集。请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。
-- SQL UNION 语法
SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2
-- 注释:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。 -- SQL UNION ALL 语法
SELECT column_name(s) FROM table_name1
UNION ALL
SELECT column_name(s) FROM table_name2
-- 另外,UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名。 -
SQL select into 语句:用于创建表的备份复件。SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中。SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档。
-- 可以把所有的列插入新表:
SELECT *
INTO new_table_name [IN externaldatabase]
FROM old_tablename -- 或者只把希望的列插入新表:
SELECT column_name(s)
INTO new_table_name [IN externaldatabase]
FROM old_tablename -
SQL create database 语句:用于创建数据库。
-- 创建一个名为 "database_name" 的数据库
CREATE DATABASE database_name -
SQL create table 语句:用于创建数据库中的表。
SQL 数据类型:Microsoft Access、MySQL 以及 SQL Server 所使用的数据类型和范围。CREATE TABLE 表名称
(
-- 列名称1 数据类型,
-- 列名称2 数据类型,
-- 列名称3 数据类型,
-- ....
)数据类型(data_type)规定了列可容纳何种数据类型。下面的表格包含了SQL中最常用的数据类型:
数据类型 描述 - integer(size)
- int(size)
- smallint(size)
- tinyint(size)
仅容纳整数。在括号内规定数字的最大位数。 - decimal(size,d)
- numeric(size,d)
容纳带有小数的数字。
"size" 规定数字的最大位数。"d" 规定小数点右侧的最大位数。
char(size) 容纳固定长度的字符串(可容纳字母、数字以及特殊字符)。
在括号中规定字符串的长度。
varchar(size) 容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)。
在括号中规定字符串的最大长度。
date(yyyymmdd) 容纳日期。 -- 本例演示如何创建名为 "Person" 的表。
-- 该表包含 5 个列,列名分别是:"Id_P"、"LastName"、"FirstName"、"Address" 以及 "City":
CREATE TABLE Persons
(
Id_P int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
-- Id_P 列的数据类型是 int,包含整数。其余 4 列的数据类型是 varchar,最大长度为 255 个字符。
-- 本例演示如何创建名为 "Person" 的表。
-- 该表包含 5 个列,列名分别是:"Id_P"、"LastName"、"FirstName"、"Address" 以及 "City":CREATE TABLE Persons(Id_P int,LastName varchar(255),FirstName varchar(255),Address varchar(255),City varchar(255))
-- Id_P 列的数据类型是 int,包含整数。其余 4 列的数据类型是 varchar,最大长度为 255 个字符。-----------------------------------------------------------------------------------------------------------------
-
SQL 约束 (Constraints) NOT NULL 约束:NOT NULL 约束强制列不接受 NULL 值。NOT NULL 约束强制字段始终包含值。这意味着,如果不向字段添加值,就无法插入新记录或者更新记录。
-- 下面的 SQL 语句强制 "Id_P" 列和 "LastName" 列不接受 NULL 值:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
) -
SQL 约束 (Constraints) UNIQUE 约束:UNIQUE 约束唯一标识数据库表中的每条记录。UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。PRIMARY KEY 拥有自动定义的 UNIQUE 约束。
请注意,每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。 - SQL 约束 (Constraints) PRIMARY KEY 约束:PRIMARY KEY 约束唯一标识数据库表中的每条记录。主键必须包含唯一的值。主键列不能包含 NULL 值。每个表都应该有一个主键,并且每个表只能有一个主键。
- SQL 约束 (Constraints) FOREIGN KEY 约束:一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY。FOREIGN KEY 约束用于预防破坏表之间连接的动作。FOREIGN KEY 约束也能防止非法数据插入外键列,它必须是它指向的那个表中的值之一。
-
SQL 约束 (Constraints) CHECK 约束:CHECK 约束用于限制列中的值的范围。如果对单个列定义 CHECK 约束,那么该列只允许特定的值。如果对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制。
-- 1、SQL CHECK Constraint on CREATE TABLE
-- 下面的 SQL 在 "Persons" 表创建时为 "Id_P" 列创建 CHECK 约束。CHECK 约束规定 "Id_P" 列必须只包含大于 0 的整数。
-- My SQL:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CHECK (Id_P>0)
)
-- SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
Id_P int NOT NULL CHECK (Id_P>0),
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
) -- 如果需要命名 CHECK 约束,以及为多个列定义 CHECK 约束,请使用下面的 SQL 语法:
-- MySQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes')
) -- 2、SQL CHECK Constraint on ALTER TABLE
-- 如果在表已存在的情况下为 "Id_P" 列创建 CHECK 约束,请使用下面的 SQL:
-- MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CHECK (Id_P>0) -- 如果需要命名 CHECK 约束,以及为多个列定义 CHECK 约束,请使用下面的 SQL 语法:
-- MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes') -- 3、撤销 CHECK 约束
-- 如需撤销 CHECK 约束,请使用下面的 SQL:
-- SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT chk_Person
-- MySQL:
ALTER TABLE Persons
DROP CHECK chk_Person -
SQL 约束 (Constraints) DEFAULT 约束:DEFAULT 约束用于向列中插入默认值。如果没有规定其他的值,那么会将默认值添加到所有的新记录。
-- 1、SQL DEFAULT Constraint on CREATE TABLE
-- 下面的 SQL 在 "Persons" 表创建时为 "City" 列创建 DEFAULT 约束:
-- My SQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255) DEFAULT 'Sandnes'
)
-- 通过使用类似 GETDATE() 这样的函数,DEFAULT 约束也可以用于插入系统值:
CREATE TABLE Orders
(
Id_O int NOT NULL,
OrderNo int NOT NULL,
Id_P int,
OrderDate date DEFAULT GETDATE()
)
-- 2、SQL DEFAULT Constraint on ALTER TABLE
-- 如果在表已存在的情况下为 "City" 列创建 DEFAULT 约束,请使用下面的 SQL:
-- MySQL:
ALTER TABLE Persons
ALTER City SET DEFAULT 'SANDNES'
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ALTER COLUMN City SET DEFAULT 'SANDNES' -- 3、撤销 DEFAULT 约束
-- 如需撤销 DEFAULT 约束,请使用下面的 SQL:
-- MySQL:
ALTER TABLE Persons
ALTER City DROP DEFAULT
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ALTER COLUMN City DROP DEFAULT -
SQL create index 语句:CREATE INDEX 语句用于在表中创建索引。在不读取整个表的情况下,索引使数据库应用程序可以更快地查找数据。用户无法看到索引,它们只能被用来加速搜索/查询。
注释:更新一个包含索引的表需要比更新一个没有索引的表更多的时间,这是由于索引本身也需要更新。因此,理想的做法是仅仅在常常被搜索的列(以及表)上面创建索引。-- 1、SQL CREATE INDEX 语法
-- 在表上创建一个简单的索引。允许使用重复的值:
CREATE INDEX index_name
ON table_name (column_name)
-- 注释:"column_name" 规定需要索引的列。 -- 2、SQL CREATE UNIQUE INDEX 语法
-- 在表上创建一个唯一的索引。唯一的索引意味着两个行不能拥有相同的索引值。
CREATE UNIQUE INDEX index_name
ON table_name (column_name)实例:
-- CREATE INDEX 实例
-- 本例会创建一个简单的索引,名为 "PersonIndex",在 Person 表的 LastName 列:
CREATE INDEX PersonIndex
ON Person (LastName) -- 如果您希望以降序索引某个列中的值,您可以在列名称之后添加保留字 DESC:
CREATE INDEX PersonIndex
ON Person (LastName DESC) -- 假如您希望索引不止一个列,您可以在括号中列出这些列的名称,用逗号隔开:
CREATE INDEX PersonIndex
ON Person (LastName, FirstName) -
SQL drop 语句:撤销索引、表以及数据库。通过使用 DROP 语句,可以轻松地删除索引、表和数据库。
-- SQL DROP INDEX 语句
-- 我们可以使用 DROP INDEX 命令删除表格中的索引。
-- 1、用于 Microsoft SQLJet (以及 Microsoft Access) 的语法:
DROP INDEX index_name ON table_name
-- 2、用于 MS SQL Server 的语法:
DROP INDEX table_name.index_name
-- 3、用于 IBM DB2 和 Oracle 语法:
DROP INDEX index_name
-- 4、用于 MySQL 的语法:
ALTER TABLE table_name DROP INDEX index_name
-- 5、SQL DROP TABLE 语句
-- DROP TABLE 语句用于删除表(表的结构、属性以及索引也会被删除):
DROP TABLE 表名称
-- 6、SQL DROP DATABASE 语句
-- DROP DATABASE 语句用于删除数据库:
DROP DATABASE 数据库名称
-- 7、SQL TRUNCATE TABLE 语句
-- 如果我们仅仅需要除去表内的数据,但并不删除表本身,那么我们该如何做呢?
-- 请使用 TRUNCATE TABLE 命令(仅仅删除表格中的数据):
TRUNCATE TABLE 表名称 -
SQL alter table 语句:ALTER TABLE 语句用于在已有的表中添加、修改或删除列。
-- ALTER TABLE 语句
-- ALTER TABLE 语句用于在已有的表中添加、修改或删除列。 -- SQL ALTER TABLE 语法
-- 如需在表中添加列,请使用下列语法:
ALTER TABLE table_name
ADD column_name datatype -- 要删除表中的列,请使用下列语法:
ALTER TABLE table_name
DROP COLUMN column_name
-- 注释:某些数据库系统不允许这种在数据库表中删除列的方式 (DROP COLUMN column_name)。 -- 要改变表中列的数据类型,请使用下列语法:
ALTER TABLE table_name
ALTER COLUMN column_name datatype SQL auto_increment 字段:Auto-increment 会在新记录插入表中时生成一个唯一的数字。我们通常希望在每次插入新记录时,自动地创建主键字段的值。我们可以在表中创建一个 auto-increment 字段。
- SQL view (视图):视图是可视化的表,可以创建、更新、删除视图。
-
SQL NULL函数:isnull()、NVL()、IFNULL() 和 COALESCE() 函数:
-- 下面,如果 "UnitsOnOrder" 是 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 函数:SQL 拥有很多可用于计数和计算的内建函数。
-- 内建 SQL 函数的语法是:
SELECT function(列) FROM 表在 SQL 中,基本的函数类型和种类有若干种。函数的基本类型是:
(1)Aggregate 函数(合计函数)
(2)Scalar 函数(标量函数) - SQL group by 语句:合计函数 (比如 SUM) 常常需要添加 GROUP BY 语句。GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。
-
SQL having 语句:在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。
having 子句使你能够指定过滤条件,从而控制查询结果中哪些组可以出现在最终结果里面。
where 子句对被选择的列施加条件,而 having 子句则对 group by 子句所产生的组施加条件。
在 select 查询中,having 子句必须紧随 group by 子句,并出现在 order by 子句(如果有的话)之前。-- 举例说明
SELECT Customer,SUM(OrderPrice) FROM Orders
WHERE Customer='Bush' OR Customer='Adams'
GROUP BY Customer
HAVING SUM(OrderPrice)>1500
5、SQL 函数
https://dev.mysql.com/doc/refman/5.7/en/func-op-summary-ref.html(MySQL完整的函数列表)
5.1 SQL Date 函数
参考:http://www.w3school.com.cn/sql/sql_dates.asp
5.2 合计函数(Aggregate functions)
Aggregate 函数的操作面向一系列的值,并返回一个单一的值。
注释:如果在 SELECT 语句的项目列表中的众多其它表达式中使用 SELECT 语句,则这个 SELECT 必须使用 GROUP BY 语句!
5.2.1 MS Access 中的合计函数
函数 | 描述 |
---|---|
AVG(column) | 返回某列的平均值 |
COUNT(column) | 返回某列的行数(不包括 NULL 值) |
COUNT(*) | 返回被选行数 |
FIRST(column) | 返回在指定的域中第一个记录的值 |
LAST(column) | 返回在指定的域中最后一个记录的值 |
MAX(column) | 返回某列的最高值 |
MIN(column) | 返回某列的最低值 |
STDEV(column) | |
STDEVP(column) | |
SUM(column) | 返回某列的总和 |
VAR(column) | |
VARP(column) |
5.2.2 在 SQL Server 中的合计函数
函数 | 描述 |
---|---|
AVG(column) | 返回某列的平均值 |
BINARY_CHECKSUM | |
CHECKSUM | |
CHECKSUM_AGG | |
COUNT(column) | 返回某列的行数(不包括NULL值) |
COUNT(*) | 返回被选行数 |
COUNT(DISTINCT column) | 返回相异结果的数目 |
FIRST(column) | 返回在指定的域中第一个记录的值(SQLServer2000 不支持) |
LAST(column) | 返回在指定的域中最后一个记录的值(SQLServer2000 不支持) |
MAX(column) | 返回某列的最高值 |
MIN(column) | 返回某列的最低值 |
STDEV(column) | |
STDEVP(column) | |
SUM(column) | 返回某列的总和 |
VAR(column) | |
VARP(column) |
5.3 Scalar 函数
Scalar 函数的操作面向某个单一的值,并返回基于输入值的一个单一的值。
5.3.1 MS Access 中的 Scalar 函数
函数 | 描述 |
---|---|
UCASE(c) | 将某个域转换为大写 |
LCASE(c) | 将某个域转换为小写 |
MID(c,start[,end]) | 从某个文本域提取字符 |
LEN(c) | 返回某个文本域的长度 |
INSTR(c,char) | 返回在某个文本域中指定字符的数值位置 |
LEFT(c,number_of_char) | 返回某个被请求的文本域的左侧部分 |
RIGHT(c,number_of_char) | 返回某个被请求的文本域的右侧部分 |
ROUND(c,decimals) | 对某个数值域进行指定小数位数的四舍五入 |
MOD(x,y) | 返回除法操作的余数 |
NOW() | 返回当前的系统日期 |
FORMAT(c,format) | 改变某个域的显示方式 |
DATEDIFF(d,date1,date2) | 用于执行日期计算 |