转自:http://www.cnblogs.com/ljianhui/archive/2012/08/13/2695906.html

常用SQL语句

首行当然是最基本的增删查改啦,其中最重要的是查。

还有就是一些要注意的地方,就是SQL语句对大小写不敏感,语句中列名对应的值要用单引号''括起来不是双引号。
SQL 使用单引号来环绕文本值。如果是数值,请不要使用引号。
特别是C/C++程序员要注意,通常错误都是在用字符串进行拼接SQL语句时,由于双引号和单引号混用,特别容易出错。

一、查:1、SELECT 列名称 FROM 表名称,其中列名可以是多个,中间用豆号分开,如SELECT LastName,FirstName FROM Persons;
    2、SELECT * FROM 表名称,表示查找表中所有的内容,星号(*)是选取所有列的快捷方式;
    3、用where 限定搜索范围,SELECT 列名称 FROM 表名称 WHERE 列 运算符 值,其中,运算符包括
        操作符 描述
         = 等于
         <> 不等于
         > 大于
         < 小于
         >= 大于等于
        <= 小于等于
BETWEEN     在某个范围内
        LIKE 搜索某种模式
   注释:在某些版本的 SQL 中,操作符 <> 可以写为 !=。
   如:SELECT * FROM Persons WHERE City='Beijing'

4、以下说说上面的一个运算符like
LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。SELECT column_name(s)FROM table_name WHERE column_name LIKE pattern
例如:
SELECT * FROM Persons WHERE City LIKE 'N%'
SELECT * FROM Persons WHERE City LIKE '%g'
SELECT * FROM Persons WHERE City LIKE '%lon%'

在以上的三个例子中,都有一个符号“%”,"%" 可用于定义通配符(模式中缺少的字母)。对于第一个例子,可以理解为查找City列中的名字中一定要以N开头的,后面的字母是什么,不用管;同理,第二个例子,是搜索City列中的名字中一定要以g结尾的城市,第三个例子,则是查找City列中的名字中名字存在lon的城市。

简单点来说,这是一种模糊搜索,而“%”可以代表任何字符。

5、and,or
and 即条件交集,or 即条件并集;

二、改:Update 语句用于修改表中的数据。语法:UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值;
    列名可以是多个,多个列名之间用豆号分开;
    例如:UPDATE Person SET FirstName = 'Fred' WHERE LastName = 'Wilson'
 UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing' WHERE LastName = 'Wilson'

三、删:DELETE 语句用于删除表中的行。语法:DELETE FROM 表名称 WHERE 列名称 = 值,如:DELETE FROM Person WHERE LastName = 'Wilson' 
    删除所有行,DELETE FROM table_name或DELETE * FROM table_name(注意,并不删除表);

四、增:INSERT INTO 语句用于向表格中插入新的行。语句:INSERT INTO 表名称 VALUES (值1, 值2,....)
或INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
    例如:INSERT INTO Persons VALUES ('Gates', 'Bill', 'Xuanwumen 10', 'Beijing')或
 INSERT INTO Persons (LastName, Address) VALUES ('Wilson', 'Champs-Elysees‘)

五、sum()函数;
SUM 函数返回数值列的总数(总额)。注意,只能统计数值。语法:SELECT SUM(column_name) FROM table_name
例如:SELECT SUM(OrderPrice) AS OrderTotal FROM Orders;as表示生成的数据的列名是OrderTotal

六、count()函数
1、COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入),即column_name中有多少个不同的值:
SELECT COUNT(column_name) FROM table_name
如:SELECT COUNT(Customer) AS CustomerNilsen FROM Orders WHERE Customer='Carter'

2、COUNT(*) 函数返回表中的记录数,即表中有多少条记录:SELECT COUNT(*) FROM table_name
如:SELECT COUNT(*) AS NumberOfOrders FROM Orders

3、COUNT(DISTINCT column_name) 函数返回指定列的不同值的数目:SELECT COUNT(DISTINCT column_name) FROM table_name
如:SELECT COUNT(DISTINCT Customer) AS NumberOfCustomers FROM Orders

注:count()函数可以统计出一个列中某一值的出现次数,而不限于列的值的数据类型,而sum()函数限定操作的值的类型一定要是数值类型;

七、group by
1、GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。通常与sum()、count()等函数一起用。
2、语法:SELECT column_name0, aggregate_function(column_name1) FROM table_name WHERE column_name operator value GROUP BY column_name2
3、与sum()的结合使用,可以根据column_name2列中的值的不同而对column_name1的值进行分组并合计;
例如:SELECT City, sum(input) FROM Person  GROUP BY City ;就能按把收入统计并按城市分组,即表中有多少个不同的City就有多少行数据。
4、与count()结合使用,可以统计出某表中某列中的某值出现的次数.
select a as xm,count(a) as cs from table1 group by a
如某表table1,
... a ...
... 0 ...
... 1 ...
... 2 ...
... 1 ...
... 0 ...
其中a列只有0,1,2三种值,如何统计各值出现的次数,最好弄成这样的
XM CS
0 (0出现的次数)   
1 (1出现的次数)
2 (2出现的次数)
5、我们也可以对一个以上的列应用 GROUP BY 语句,就像这样:

SELECT Customer,OrderDate,SUM(OrderPrice) FROM Orders GROUP BY Customer,OrderDate

八、把两个表中的相关内容进行搜索合并

例如:select column1,column2,column3 from table_name1,talbe_name2 where table_name1.column = table_name2.column

注意:两个表中就有一个记录相同信息的列 column。

常用SQL语句(增删查改、合并统计、模糊搜索)的更多相关文章

  1. 通过web sql实现增删查改

    <!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...

  2. MongoDB在Java下的增删查改

    我们总不能一直使用cmd对数据库操作,数据库总是要在程序中使用的.今天来说一下怎么通过Java调用MongoDB. 学习一下最基本也是最常用的增删查改语句,这是使用数据库的基础. 注意事项: 1.要打 ...

  3. EF各版本增删查改及执行Sql语句

    自从我开始使用Visual Studio 也已经经历了好几个版本了,而且这中间EF等框架的改变也算是比较多的.本篇文章记录下各个版本EF执行Sql语句和直接进行增删查改操作的区别,方便自己随时切换版本 ...

  4. EF增删查改加执行存储过程和sql语句,多种方法汇总

    ActionUrl c = new ActionUrl() { ActionName="test", RequestUrl="/123/123", SubTim ...

  5. java:Hibernate框架1(环境搭建,Hibernate.cfg.xml中属性含义,Hibernate常用API对象,HibernteUitl,对象生命周期图,数据对象的三种状态,增删查改)

    1.环境搭建: 三个准备+7个步骤 准备1:新建项目并添加hibernate依赖的jar文件  准备2:在classpath下(src目录下)新建hibernate的配置文件:hibernate.cf ...

  6. Sql Server的艺术(一) 视图的增删查改

    视图是从一个或者多个表中查询数据的另一种方式.利用视图可以集中.简化定制数据库,同时还能保障安全. 视图其结构和数据是建立在对应的查询基础上的.和表一样,视图也是包括几个被定义的数据列和多个数据行,但 ...

  7. SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)

    SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)-DML 1.SQL INSERT INTO 语句(在表中插入) INSERT INTO 语句用于向表中插入新记录. SQL I ...

  8. Mysql常用增删查改及入门(二)

    常用:数据库常用就是DML:增删查改 1.增加数据: insert into 表名 values (值1,值2...); insert into 表名 (字段1,字段2) values (值1,值2) ...

  9. JDBC终章- 使用 DBUtils实现增删查改- C3P0Utils数据源/QueryRunner runner连接数据源并执行sql

    JDBC终章- 使用 DBUtils实现增删查改 1.数据库结构 Create Table CREATE TABLE `user` ( `id` ) NOT NULL AUTO_INCREMENT, ...

随机推荐

  1. SQL 编译与重编译

    编译的含义 当SQLSERVER收到任何一个指令,包括查询(query).批处理(batch).存储过程.触发器(trigger) .预编译指令(prepared statement)和动态SQL语句 ...

  2. Masonry约束崩溃

    报错: Trapped uncaught exception 'NSInvalidArgumentException', reason: '*** +[NSLayoutConstraint const ...

  3. [转]:移动端H5页面高清多屏适配方案

    原文链接:http://www.tuicool.com/articles/YJviea 背景 开发移动端H5页面 面对不同分辨率的手机 面对不同屏幕尺寸的手机 视觉稿 在前端开发之前,视觉MM会给我们 ...

  4. jQuery--Dom元素隐藏和显示原理(源码2.0.3)

    对于Dom元素显示和隐藏的操作,jQuery提供了比较方便的函数,我们也经常使用: 1. show() : 显示Dom元素2. hide() : 隐藏Dom元素3. toggle() : 改变Dom元 ...

  5. 跨域技术-jsonp

    JSONP是JSON with padding 的简写,其有两个部分组成,一个是回调函数,一个是数据,其基本格式如下 function handleResult(result){ alert(resu ...

  6. javascript 单行向上滚动文字

    <html><head><meta http-equiv="Content-Type" content="text/html; charse ...

  7. input多选图片与显示

    input标签 在使用input选择文件时遇到了 在遍历input file.files 只显示最后一个,修改如下: CSS: <style type="text/css"& ...

  8. const和define的使用区别

    在PHP中(PHP 4及以后),我们可以使用函数define()来定义常量,例如: <?php define('PI',3.14159);  //定义一个名为PI的常量 echo PI;     ...

  9. CentOS 6.4 通过Yum给Chrome安装Adobe Flash Player

    方法一:安装 Flash Player yum install flash-plugin 安装好后,重新启动chrome,在地址栏输入[chrome://plugins/]确定 Shockware F ...

  10. http 和 Tcp 的区别

    http 和 tcp 的区别: Http在每一次请求结束后都会主动释放连接,因此HTTP连接是一种“短链接”,要保持客户端程序的在线状态,需要不断地向服务器端发起连接请求. TCP连接时一种“长连接” ...