cd "C:\Program Files (x86)\MySQL\MySQL Server 5.0\bin\"
链接(以用户名为root为例):mysql -u root -p;执行这命令后,会提示输入密码,输入密码后回车,应该就OK了。
1>在MYSQL 中可以有可以用TOP来返回前几条的记录,ORALE用于显示出来ROWNUM来显示
2>分类组查询,group by 用于count用于统计,sum用于相加。例如:
3>not like 查询不包括某字符的条件
4>使用通配符:使用 _ 通配符
例子 1
现在,我们希望从上面的 "Persons" 表中选取名字的第一个字符之后是 "eorge" 的人:
我们可以使用下面的 SELECT 语句:
SELECT * FROM Persons
WHERE FirstName LIKE '_eorge'结果集:
Id LastName FirstName Address City
2 Bush George Fifth Avenue New York
例子 2
接下来,我们希望从 "Persons" 表中选取的这条记录的姓氏以 "C" 开头,然后是一个任意字符,然后是 "r",然后是任意字符,然后是 "er":
我们可以使用下面的 SELECT 语句:
SELECT * FROM Persons
WHERE LastName LIKE 'C_r_er'结果集:
Id LastName FirstName Address City
3 Carter Thomas Changan Street Beijing
使用 [charlist] 通配符
例子 1
现在,我们希望从上面的 "Persons" 表中选取居住的城市以 "A" 或 "L" 或 "N" 开头的人:
我们可以使用下面的 SELECT 语句:
SELECT * FROM Persons
WHERE City LIKE '[ALN]%'结果集:
Id LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
例子 2
现在,我们希望从上面的 "Persons" 表中选取居住的城市不以 "A" 或 "L" 或 "N" 开头的人:
我们可以使用下面的 SELECT 语句:
SELECT * FROM Persons
WHERE City LIKE '[!ALN]%'
5. inner join
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
INNER JOIN Orders
ON Persons.Id_P = Orders.Id_P
ORDER BY Persons.LastName
和 SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons,Orders
where Persons.Id_P = Orders.Id_P
ORDER BY Persons.LastName
效果一样
原始的表 (用在例子中的):
"Persons" 表:
Id_P LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing
"Orders" 表:
Id_O OrderNo Id_P
1 77895 3
2 44678 3
3 22456 1
4 24562 1
5 34764 65
左连接(LEFT JOIN)实例
现在,我们希望列出所有的人,以及他们的定购 - 如果有的话。
您可以使用下面的 SELECT 语句:
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
LEFT JOIN Orders
ON Persons.Id_P=Orders.Id_P
ORDER BY Persons.LastName
结果集:
LastName FirstName OrderNo
Adams John 22456
Adams John 24562
Carter Thomas 77895
Carter Thomas 44678
Bush George
LEFT JOIN 关键字会从左表 (Persons) 那里返回所有的行,即使在右表 (Orders) 中没有匹配的行。
6>RIGHT JOIN 关键字语法
SELECT column_name(s)
FROM table_name1
RIGHT JOIN table_name2
ON table_name1.column_name=table_name2.column_name
注释:在某些数据库中, RIGHT JOIN 称为 RIGHT OUTER JOIN。
原始的表 (用在例子中的):
"Persons" 表:
Id_P LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing
"Orders" 表:
Id_O OrderNo Id_P
1 77895 3
2 44678 3
3 22456 1
4 24562 1
5 34764 65
右连接(RIGHT JOIN)实例
现在,我们希望列出所有的定单,以及定购它们的人 - 如果有的话。
您可以使用下面的 SELECT 语句:
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
RIGHT JOIN Orders
ON Persons.Id_P=Orders.Id_P
ORDER BY Persons.LastName
结果集:
LastName FirstName OrderNo
Adams John 22456
Adams John 24562
Carter Thomas 77895
Carter Thomas 44678
34764
7>
SQL FULL JOIN 关键字
只要其中某个表存在匹配,FULL JOIN 关键字就会返回行。
FULL JOIN 关键字语法
SELECT column_name(s)
FROM table_name1
FULL JOIN table_name2
ON table_name1.column_name=table_name2.column_name
注释:在某些数据库中, FULL JOIN 称为 FULL OUTER JOIN。
原始的表 (用在例子中的):
"Persons" 表:
Id_P LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing
"Orders" 表:
Id_O OrderNo Id_P
1 77895 3
2 44678 3
3 22456 1
4 24562 1
5 34764 65
全连接(FULL JOIN)实例
现在,我们希望列出所有的人,以及他们的定单,以及所有的定单,以及定购它们的人。
您可以使用下面的 SELECT 语句:
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
FULL JOIN Orders
ON Persons.Id_P=Orders.Id_P
ORDER BY Persons.LastName
结果集:
LastName FirstName OrderNo
Adams John 22456
Adams John 24562
Carter Thomas 77895
Carter Thomas 44678
Bush George
34764
FULL JOIN 关键字会从左表 (Persons) 和右表 (Orders) 那里返回所有的行。如果 "Persons" 中的行在表 "Orders" 中没有匹配,或者如果 "Orders" 中的行在表 "Persons" 中没有匹配,这些行同样会列出。
6>
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')
)
7>
索引您可以在表中创建索引,以便更加快速高效地查询数据。
用户无法看到索引,它们只能被用来加速搜索/查询。
注释:更新一个包含索引的表需要比更新一个没有索引的表更多的时间,这是由于索引本身也需要更新。因此,理想的做法是仅仅在常常被搜索的列(以及表)上面创建索引。
SQL CREATE INDEX 语法
在表上创建一个简单的索引。允许使用重复的值:
CREATE INDEX index_name
ON table_name (column_name)
注释:"column_name" 规定需要索引的列。
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)
8>
分享到:
相关推荐
SQL 基础 SQL 首页 SQL 简介 SQL 语法 SQL select SQL distinct SQL where SQL AND & OR SQL Order By SQL insert SQL update SQL delete SQL 高级 SQL Top SQL Like SQL 通配符 ...SQL 总结
T-SQL,全称Transact-SQL,是微软SQL Server数据库管理系统中使用的SQL语言扩展版本。...通过阅读和研究个人整理的T-SQL总结,可以帮助你更好地理解和应用T-SQL,提高在SQL Server环境下的数据库管理与开发能力。
《2017年深圳-华为SQL总结》 在信息技术领域,SQL(Structured Query Language,结构化查询语言)是数据库管理、数据查询和更新的核心工具。这篇文档详细总结了2017年深圳华为公司在使用SQL过程中的一些关键知识点...
以下是关于标题"sql总结代码"和描述中涉及的一些核心知识点的详细说明: 1. DDL(Data Definition Language):DDL用于创建和修改数据库结构。它包括CREATE、ALTER、DROP等语句,如创建表(CREATE TABLE)、修改表...
在“PL_SQL总结-1.rar”这个压缩包中,包含了一个名为“PL_SQL总结-1.ppt”的文件,这很可能是对PL/SQL基础概念、语法和用法的一个详细讲解。 PL/SQL由三部分组成:声明部分、执行部分和异常处理部分。在声明部分,...
综上所述,这份"SQL总结资料.rar"涵盖了SQL Server的核心概念和高级特性,对于学习和提升SQL Server技能非常有价值。无论是初学者还是经验丰富的开发者,都能从中受益。通过深入学习和实践这些内容,你将能够更好地...
通过学习和实践这些知识点,结合提供的"SQL总结及晋级试题",你可以逐步提升SQL技能,应对更复杂的数据库管理和数据分析任务。无论是初学者还是有经验的开发者,这份资料都将是一份宝贵的资源。
本教程“PL_SQL总结-3”显然是一个关于深入学习PL/SQL的系列教程的一部分,主要目标是帮助用户熟练掌握PL/SQL语法和Oracle数据库的操作。 在PL/SQL中,学习的主要知识点包括: 1. **基本语法**:包括变量声明、...
在“PL_SQL总结-6.rar”这个压缩包中,我们可以期待找到一份关于PL/SQL的学习教程,特别是第六部分的内容。通常,这样的教程会涵盖以下几个重要的PL/SQL知识点: 1. **基础语法**:PL/SQL的基本结构包括声明部分、...
本教程《PL_SQL总结-5》显然是一个关于PL/SQL的深入学习资源,旨在帮助用户全面掌握PL/SQL的语法和应用。 1. **PL/SQL基本结构**: PL/SQL由声明部分、执行部分和异常处理部分组成。声明部分定义变量、常量、游标...
本教程“PL_SQL总结-2”旨在帮助学习者深入理解和掌握PL/SQL的核心概念和实践技巧。 一、PL/SQL基础 1. **块结构**:PL/SQL由声明部分、执行部分和异常处理部分组成,包括BEGIN、END关键字,定义了程序的基本结构...
《通过分析SQL语句的执行计划优化SQL总结》是一份关于数据库性能调优的重要文档,主要针对SQL语句的执行计划分析与优化进行深入探讨。本文档共分为六章,旨在帮助读者理解如何通过深入分析SQL执行过程,提升数据库...
本文将围绕“SQL总结”这一主题,深入探讨SQL的基础概念、主要功能、语法结构以及常见操作,旨在为你提供一个全面且实用的SQL知识框架。 一、SQL基础 SQL起源于1970年代,由IBM的研究员发明,旨在简化对关系型...
这篇“PL/SQL总结-4”教程,显然是针对已经学习过基础的读者,旨在进一步提升对PL/SQL的理解和应用能力。 在PL/SQL中,我们主要会学习以下几个核心概念: 1. **块结构**:PL/SQL程序的基本结构是块,包括声明部分...
SQL总结.xmind
这篇博客"我的Oracle SQL总结"可能涵盖了作者在使用Oracle SQL过程中的学习和实践经验,虽然具体细节未在描述中给出,但我们可以根据Oracle SQL的一般知识点进行深入讨论。 首先,Oracle SQL是Oracle数据库系统的...
JAVA操作SQL总结2.pdf
sql学习 第15周之基于案例学SQL总结课(大结局).mmap
在数据库管理中,SQL语句的优化是提升系统性能的关键环节。执行计划是数据库解析SQL语句后生成的一种详细步骤,它展示了数据是如何被检索、排序、连接等操作的。通过对执行计划的深入理解,我们可以识别出SQL语句的...
一份完整的t-sql语法总结,基于sql server数据库。