sql查询总结

1.SQL select 语句

  SELECT 语句用于从表中选取数据。

  结果被存储在一个结果表中(称为结果集)。

SELECT 列名称 FROM 表名称

  实例:

SELECT username,password FROM user

  或者:

SELECT * FROM user

2.SQL SELECT DISTINCT 语句

  在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。

   关键词 DISTINCT 用于返回唯一不同的值。

SELECT DISTINCT 列名称 FROM 表名称

  实例:从order表中查询所有的Company,仅选取唯一不同的值

SELECT DISTINCT Company FROM Orders 

3.SQL WHERE 条件语句

  WHERE 语句用于规定选择的标准。

SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

  where运算符条件:

操作符 描述
= 等于
<> 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于
BETWEEN 在某个范围内
LIKE 搜索某种模式

  例:

SELECT * FROM Persons WHERE id=1

4.SQL AND & OR 运算符

   AND 和 OR 可在 WHERE 子语句中把两个或多个条件结合起来。

  AND表示:如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。

  OR表示:如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。

  AND实例:

SELECT * FROM Persons WHERE FirstName=‘T‘ AND LastName=‘C‘

  OR实例:

SELECT * FROM Persons WHERE firstname=‘T‘ OR lastname=‘C‘

  AND和OR联合使用

SELECT * FROM Persons WHERE (FirstName=‘T‘ OR FirstName=‘W‘)
AND LastName=‘C‘

5.SQL ORDER BY 语句

  ORDER BY 语句用于对结果集进行排序。

  ORDER BY 语句用于根据指定的列对结果集进行排序。

  ORDER BY 语句默认按照升序对记录进行排序。

  例:

SELECT Company, OrderNumber FROM Orders ORDER BY id

  例:

SELECT Company, OrderNumber FROM Orders ORDER BY id DESC

6.SQL INSERT INTO 语句

  INSERT INTO 语句用于向表格中插入新的行。

  语法:

INSERT INTO 表名称 VALUES (值1, 值2,....)
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)

7.SQL UPDATE 语句

  Update 语句用于修改表中的数据。

  语法:

UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

  例:

UPDATE Person SET FirstName = ‘F‘ WHERE LastName = ‘W‘ 

8.SQL DELETE 语句

  DELETE 语句用于删除表中的行。

  语法:

DELETE FROM 表名称 WHERE 列名称 = 值

  例:

DELETE FROM Person WHERE LastName = ‘W‘ 

9.SQL TOP 子句

  TOP 子句用于规定要返回的记录的数目。

  对于拥有数千条记录的大型表来说,TOP 子句是非常有用的。

  例:

SELECT TOP number|percent column_name(s) FROM table_name

   例:从persons表中,查询前两条数据

SELECT TOP 2 * FROM Persons

10.SQL LIKE 操作符

  LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。

  LIKE 操作符语法:

SELECT column_name(s)  FROM table_name  WHERE column_name LIKE pattern

  例:

SELECT * FROM Persons WHERE City LIKE ‘%lon%‘

  例:NOT LIKE

SELECT * FROM Persons WHERE City NOT LIKE ‘%lon%‘

11.SQL 通配符  

  在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。

  SQL 通配符必须与 LIKE 运算符一起使用。

通配符 描述
% 替代一个或多个字符
_ 仅替代一个字符
[charlist] 字符列中的任何单一字符

[^charlist]

或者

[!charlist]

不在字符列中的任何单一字符

   例:使用 % 通配符

SELECT * FROM Persons WHERE City LIKE ‘%lond%‘

  例:使用 _ 通配符: 从表中选取名字的第一个字符之后是 "eorge" 的人:

SELECT * FROM Persons WHERE FirstName LIKE ‘_eorge‘

  例:使用 [charlist] 通配符: 从表中选取居住的城市以 "A" 或 "L" 或 "N" 开头的人:

SELECT * FROM Persons WHERE City LIKE ‘[ALN]%‘

  

  例:从表中选取居住的城市不以 "A" 或 "L" 或 "N" 开头的人:

SELECT * FROM Persons WHERE City LIKE ‘[!ALN]%‘

12.SQL IN 操作符

  IN 操作符允许我们在 WHERE 子句中规定多个值。

  IN语法:

SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2,...)

  实例:从表中选取姓氏为 Adams 和 Carter 的人:

SELECT * FROM Persons WHERE LastName IN (‘Adams‘,‘Carter‘)

13.SQL BETWEEN 操作符

  操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期

  语法:

SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2

  实例: BETWEEN ... AND

SELECT * FROM Persons WHERE LastName BETWEEN ‘Adams‘ AND ‘Carter‘

  实例:NOT  BETWEEN ... AND

SELECT * FROM Persons WHERE LastName NOT BETWEEN ‘Adams‘ AND ‘Carter‘

14.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

    实例: 使用表名称别名

SELECT po.OrderID, p.LastName, p.FirstName FROM Persons AS p, Product_Orders AS po WHERE p.LastName=‘Adams‘ AND p.FirstName=‘John‘

15.SQL JOIN

  SQL join 用于根据两个或多个表中的列之间的关系,从这些表中查询数据。

  用法:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons INNER JOIN Orders
ON Persons.Id_P = Orders.Id_P
ORDER BY Persons.LastName

//很晚了,明天再接再厉。。。。  加油

 

时间: 2024-10-06 05:02:20

sql查询总结的相关文章

Spring Data JPA原生SQL查询

package com.wanda.cms.dao.repository;import org.springframework.stereotype.Repository;import javax.persistence.EntityManager;import javax.persistence.PersistenceContext;import javax.persistence.Query;import java.math.BigInteger;import java.util.*; /*

oracle新建用户执行sql查询语句出现错误ORA-00942:表或视图不存在

oracle创建新用户后客户端执行SQL查询后出现错误提示如下: 执行查询语句如下: select * from sm_sales_order; ORA-00942:表或视图不存在 创建新用户并指定表空间和临时表空间 CREATE USER xxx IDENTIFIED BY xxxx DEFAULT TABLESPACE LMS TEMPORARY TABLESPACE TEMP; 授予系统权限connect grant connect to xxx; 授予对象权限,只限查询 grant se

提高SQL查询效率

1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=0 3.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放

Hibernate 关于执行sql查询语句(转)

原文  http://www.yshjava.cn/post/543.html 主题 SQLHibernate Hibernate对原生SQL查询的支持和控制是通过SQLQuery接口实现的.通过Session接口,我们能够很方便的创建一个SQLQuery(SQLQuery是一个接口,在Hibernate4.2.2之前,默认返回的是SQLQuery的实现类--SQLQueryImpl对象,在下文中出现的SQLQuery如非注明,都是指该子类)对象来进行原生SQL查询: session.creat

笔记:Hibernate SQL 查询

Hibernate 支持使用原生的SQL查询,使用原生SQL查询可以利用某些数据库特性,原生SQL查询也支持将SQL语句放在配置文件中配置,从而提高程序的解耦,命名SQL查询还可以用于调用存储过程. SQL查询是通过SQLQuery接口来表示的,SQLQuery接口是Query接口的子接口,完全可以使用Query接口的方法,SQLQuery增加了二个重载方法 addEntity():将查询到的记录与特定的实体关联 addScalar():江查询的记录关联标量值 执行SQL的步骤如下: 获取Hib

13.hibernate的native sql查询(转自xiaoluo501395377)

hibernate的native sql查询 在我们的hibernate中,除了我们常用的HQL查询以外,还非常好的支持了原生的SQL查询,那么我们既然使用了hibernate,为什么不都采用hibernate推荐的HQL查询语句呢?这是因为HQL查询语句虽然方便我们查询,但是基于HQL的查询会将查询出来的对象保存到hibernate的缓存当中,如果在我们的一个大型项目中(数据量超过了百万级),这个时候如果使用hibernate的HQL查询的话,会一次将我们查询的对象查询出来后放到缓存中,这个时

Hibernate之SQL查询

Hibernate支持使用原生的SQL语句进行查询.使用原生的SQL的好处是:可以利用某些数据库的特性(不同的数据库SQL 语法会有所差异), 将原有的使用JDBC作为持久层技术的应用 ,迁移到使用Hibernate作为持久层技术. 我们知道 使用HQL查询 主要牵涉的是 Query接口,而使用SQL查询 主要牵涉的 是 SQLQuery接口  . 而SQLQuery接口 是 Query接口的子接口. 所以 Query接口中的方法 ,均可以在SQLQuery接口中使用 ,SQLQuery接口还多

Spark编程实现SQL查询的实例

1.Oracle中的SQL select count(1) from a_V_PWYZL_CUSTACCT_PSMIS t where not exists (select 1 from tb_show_multi_question q WHERE q.dqmp_rule_code = '仅比对系统有' and q.dqmp_role_id = '105754659' and q.DQMP_target_id = t.dqmp_mrid) AND NOT EXISTS (select /*+ i

sql查询一天内的where写法,sql写法

sql查询一天内的写法: 1. where createtime BETWEEN (select date_format(now(),'%Y-%m-%d 00:00:00')) and (select date_format(now(),'%Y-%m-%d 23:59:59')) 2. SELECT TO_DAYS(now());SELECT TO_DAYS('2016-07-02 20:50:06'); ========================================附录===

记一个简单的sql查询

在我们做各类统计和各类报表的时候,会有各种各样的查询要求.条件 这篇主要记录一个常见的统计查询 要求如下: 统计一段时间内,每天注册人数,如果某天没有人注册则显示为0 现在建个简单的表来试试 建表语句如下: 1 CREATE TABLE [dbo].[UserInfo]( 2 [UserID] [int] IDENTITY(1,1) NOT NULL, 3 [UserName] [varchar](50) NOT NULL, 4 [URegTime] [datetime] NOT NULL, 5