sql语句
康康的博客
摸鱼小能手
展开
-
sql高级--alter
在表 "Persons" 中添加一个名为 "Birthday" 的新列。 ALTER TABLE Persons ADD Birthday date 请注意,新列 "Birthday" 的类型是 date,可以存放日期。数据类型规定列中可以存放的数据的类型。改变 "Persons" 表中 "Birthday" 列的数据类型 ALTER TABLE Persons ALTER COLUMN Birt...原创 2018-03-10 23:00:03 · 159 阅读 · 0 评论 -
sql高级--约束
1.SQL NOT NULL 约束 NOT NULL 约束强制列不接受 NULL 值。 NOT NULL 约束强制字段始终包含值。这意味着,如果不向字段添加值,就无法插入新记录或者更新记录。 CREATE TABLE Persons ( Id_P int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255)...转载 2018-03-10 23:06:34 · 156 阅读 · 0 评论 -
sql高级--模糊查询like和通配符
LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。1.希望从上面的 "Persons" 表中选取居住在以 "N" 开始的城市里的人 SELECT * FROM Persons WHERE City LIKE 'N%'2.希望从 "Persons" 表中选取居住在以 "g" 结尾的城市里的人 SELECT * FROM Persons WHERE City LIKE '%g'3.希望从 ...转载 2018-03-10 23:06:14 · 2420 阅读 · 0 评论 -
sql高级--函数
1.SQL COUNT(column_name) 语法COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入): SELECT COUNT(column_name) FROM table_name 希望计算客户 "Carter" 的订单数。 我们使用如下 SQL 语句: SELECT COUNT(Customer) AS CustomerNilsen FROM Order...转载 2018-03-10 23:05:51 · 1011 阅读 · 0 评论 -
sql高级--创建索引
可以在表中创建索引,以便更加快速高效地查询数据。用户无法看到索引,它们只能被用来加速搜索/查询。注释:更新一个包含索引的表需要比更新一个没有索引的表更多的时间,这是由于索引本身也需要更新。因此,理想的做法是仅仅在常常被搜索的列(以及表)上面创建索引。1.1创建一个简单的索引,名为 "PersonIndex",在 Person 表的 LastName 列: CREATE INDEX PersonIn...转载 2018-03-10 23:05:28 · 236 阅读 · 0 评论 -
sql高级--view
什么是视图?在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表。视图包含行和列,就像一个真实的表。视图中的字段就是来自一个或多个数据库中的真实的表中的字段。我们可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,我们也可以提交数据,就像这些来自于某个单一的表。SQL CREATE VIEW 语法 CREATE VIEW view_name AS SELECT column_n...转载 2018-03-10 23:05:01 · 152 阅读 · 0 评论 -
sql高级--union
SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集。 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。 同时,每条 SELECT 语句中的列的顺序必须相同。 注释:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。列出所有在中国和美国的不同的雇员名: SELECT E_N...转载 2018-03-10 23:04:39 · 173 阅读 · 0 评论 -
sql高级--select into
SELECT INTO 语句SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中。SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档。SQL SELECT INTO 实例 - 制作备份复件制作 "Persons" 表的备份复件: SELECT * INTO Persons_backup FROM Persons拷贝某些域,可以在 SELECT 语句后列出这...转载 2018-03-10 23:04:17 · 249 阅读 · 0 评论 -
sql高级--limit-top-rownum返回规定记录数
TOP 子句用于规定要返回的记录的数目。对于拥有数千条记录的大型表来说,TOP 子句是非常有用的。注释:并非所有的数据库系统都支持 TOP 子句。MySQL 和 Oracle 中的 SQL SELECT TOP 是等价的MySQL 语法 SELECT * FROM table LIMIT 5,10; // 检索记录行 6-15 SELECT * FROM Persons LIMIT 5 ...转载 2018-03-10 23:03:55 · 606 阅读 · 0 评论 -
sql高级--join
为了得到完整的结果,我们需要从两个或更多的表中获取结果。我们就需要执行 join"Persons" 表:"Id_P" 列是 Persons 表中的的主键Id_P LastName FirstName Address City1 Adams John Oxford Street London2 Bush George Fifth Avenue New York3 Carter T...转载 2018-03-10 23:03:18 · 181 阅读 · 0 评论 -
sql高级--in_exist
希望从上表中选取姓氏为 Adams 和 Carter 的人 SELECT * FROM Persons WHERE LastName IN ('Adams','Carter')优化:可以使用 exist 和not exist代替 in和not in。操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围...转载 2018-03-10 23:02:59 · 149 阅读 · 0 评论 -
sql高级--having
HAVING 子句在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。 我们拥有下面这个 "Orders" 表: O_Id OrderDate OrderPrice Customer 1 2008/12/29 1000 Bush 2 2008/11/23 1600 Carter 3 2008/10/05 700 Bush 4 2008...转载 2018-03-10 23:02:23 · 214 阅读 · 0 评论 -
sql高级--group by
GROUP BY 语句GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。我们拥有下面这个 "Orders" 表:O_Id OrderDate OrderPrice Customer1 2008/12/29 1000 Bush2 2008/11/23 1600 Carter3 2008/10/05 700 Bush4 2008/09/28 300 Bush...转载 2018-03-10 23:01:57 · 279 阅读 · 0 评论 -
sql高级--date
SQL Date 数据类型 MySQL 使用下列数据类型在数据库中存储日期或日期/时间值: DATE - 格式 YYYY-MM-DD DATETIME - 格式: YYYY-MM-DD HH:MM:SS TIMESTAMP - 格式: YYYY-MM-DD HH:MM:SS YEAR - 格式 YYYY 或 YY SQL Server 使用下列数据类型在数据库中存储日期或日期/时间值:...原创 2018-03-10 23:01:26 · 174 阅读 · 0 评论 -
sql高级--Auto-increment
AUTO INCREMENT 字段我们通常希望在每次插入新记录时,自动地创建主键字段的值。我们可以在表中创建一个 auto-increment 字段。1.用于 MySQL 的语法下列 SQL 语句把 "Persons" 表中的 "P_Id" 列定义为 auto-increment 主键: CREATE TABLE Persons ( P_Id int NOT NULL AUTO_INCREMENT...原创 2018-03-10 23:00:50 · 375 阅读 · 0 评论 -
sql优化
1.实践中如何优化SQL数据库(mysql) 1) SQL语句及索引的优化 2) 数据库表结构的优化 3) 系统配置的优化 4) 硬件优化2.sql语句优化 1) 尽量避免耗时操作。 带有DISTINCT,UNION,MINUS,INTERSECT,ORDER BY的SQL语句会启动SQL引 执行,耗费资源的排序(SORT)功能。DISTINCT需要一次排序操作, 而其他的至少需要执行两次排序 2...转载 2018-03-10 23:06:56 · 209 阅读 · 0 评论