SQL语句增删改查(总结)

一、增:有2种方法

1.使用insert插入单行数据:

语法:insert [into] <表名> [列名] values <列值>

   例:insert into Strdents (姓名,性别,出生日期) values ('王伟华','男','1983/6/15')

   注意:如果省略表名,将依次插入所有列

2.使用insert,select语句将现有表中的 数据添加到已有的新表中

语法:insert into <已有的新表> <列名> select <原表列名> from <原表名>

  例:insert into addressList ('姓名','地址','电子邮件')select name,address,email

from  Strdents

注意:查询得到的数据个数、顺序、数据类型等,必须与插入的项保持一致

二、删:有2中方法

1.使用delete删除数据某些数据

    语法:delete from <表名> [where <删除条件>]    

    例:delete from a where name='王伟华'(删除表a中列值为王伟华的行)  

        注意:删除整行不是删除单个字段,所以在delete后面不能出现字段名

2.使用truncate table 删除整个表的数据

语法:truncate table <表名>

    例:truncate table addressList

   注意:删除表的所有行,但表的结构、列、约束、索引等不会被删除;不能

用于有外建约束引用的表

三、改  使用update更新修改数据         

    语法:update <表名> set <列名=更新值> [where <更新条件>]

   例:update addressList set 年龄=18 where 姓名='王伟华'

   注意:set后面可以紧随多个数据列的更新值(非数字要引号);where子句是可选的(非数字要引号),用来限制条件,如果不选则整个表的所有行都被更新

四、查

1.普通查询

语法:select <列名> from <表名> [where <查询条件表达试>] [order by <排序的列

名>[asc或desc]]

   1).查询所有数据行和列

    例:select * from a

    说明:查询a表中所有行和

   2).查询部分行列--条件查询

    例:select i,j,k   from  a   where f=5

    说明:查询表a中f=5的所有行,并显示i,j,k3列

   3).在查询中使用AS更改列名

    例:select name as 姓名 from a where  gender='男'

    说明:查询a表中性别为男的所有行,显示name列,并将name列改名为(姓名)显示

   4).查询空行

    例:select name from a where email is null

    说明:查询表a中email为空的所有行,并显示name列;SQL语句中用is null或者is not null

来判断是否为空行

   5).在查询中使用常量

    例:select name '北京' as 地址 from a

    说明:查询表a,显示name列,并添加地址列,其列值都为'北京'

   6).查询返回限制行数(关键字:top )

    例1:select top 6 name from a

    说明:查询表a,显示列name的前6行,top为关键字(Oracle 中没有top关键字

             用rownum替代)

select   *   from   a where   rownum<6

   7).查询排序(关键字:order by , asc , desc)

    例:select name

      from a

      where grade>=60

      order by desc

    说明:查询表中成绩大于等于60的所有行,并按降序显示name列;默认为ASC升序

2.模糊查询

   1).使用like进行模糊查询

    注意:like运算副只用语字符串,

    例:select * from a where name like '赵%'

    说明:查询显示表a中,name字段第一个字为赵的记录

   2).使用between在某个范围内进行查询

    例:select * from a where age between 18 and 20

    说明:查询显示表a中年龄在18到20之间的记录

    3).使用in在列举值内进行查询(in后是多个的数据)

例:select name from a where address in ('北京','上海','唐山')

    说明:查询表a中address值为北京或者上海或者唐山的记录,显示name字段

3.分组查询

   1).使用group by进行分组查询

    例:select studentID as 学员编号, AVG(score) as 平均成绩  (注释:这里的score是列名)

      from score (注释:这里的score是表名)

      group by studentID

           2).使用having子句进行分组筛选

    例:select studentID as 学员编号, AVG    

from score

      group by studentID

      having count(score)>1

    说明:接上面例子,显示分组后count(score)>1的行,由于where只能在没有分组

       时使用,分组后只能使用having来限制条件,

4.多表联接查询

   1).内联接

    ①在where子句中指定联接条件

    例:select a.name,b.mark

      from a,b

      where a.name=b.name

    说明:查询表a和表b中name字段相等的记录,并显示表a中的name字段和表b中的

mark字段

注:http://blog.csdn.net/a88055517/article/details/6736284    摘自此

SQL总结之增删改查的更多相关文章

  1. 使用java对sql server进行增删改查

    import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import ...

  2. 四种简单的sql语句(增删改查语句)

    四种简单的sql语句(增删改查语句) 一.插入语句 insert into [table] ([column],[column],[column]) values(?,?,?) 二.删除语句 dele ...

  3. dml语句就是你常写的sql语句,增删改查

    dml语句就是你常写的sql语句,增删改查

  4. 常见 SQL语句使用 增删改查

    一.常见的增删改查(一).查:1.SELECT 列名称 FROM 表名称,其中列名可以是多个,中间用豆号分开,如SELECT LastName,FirstName FROM Persons: 2.SE ...

  5. python连接MySQL pymysql模块,游标,SQL注入问题,增删改查操作

    pymysql模块 pymysql是用python控制终端对MySQL数据库进行操作的第三方模块 import pymysql # 1.连接数据库 client = pymysql.connect( ...

  6. SQL -------- 简单的增删改查

    sql  结构化查询语言,一种ansi 的标准计算机语言,为了访问数据库 可以做什么:可以对数据库 和表进行创建于删除, 对表里面的数据进行增删改查. 也可以创建存储过程和视图,对表设置权限 RDBM ...

  7. SQL语句简单增删改查

    常用数据类型 Int:整数,长度没有作用 Varchar:字符串,varchar(3)表示最多存放3个字符,1个中文或英文或符合都占1个字符 Decimal:小数,decimal(5,2)表示共存5位 ...

  8. SQL学习(二)SQL基础的增删改查

    在测试时使用数据库时,用的比较多的就是增删改查SQL了. 一.增加(insert into ...values) 用于向表中插入新记录 1.不指定列(表示:依次插入所有列的值) insert into ...

  9. java对sql server的增删改查

    package Database; import java.sql.*; public class DBUtil { //这里可以设置数据库名称 private final static String ...

随机推荐

  1. linux下的中文编码问题

    很多linux的初学者都会碰到这样一个问题:把windows下的文档拷到linux系统,会出现乱码!其实这涉及到中文编码的问题.linux系统默认的是统一码(utf8).而如果你的文件是big5,显然 ...

  2. 编写简单的hashCode方法

    为什么要编写hashCode方法 hashCode在平时不常自己去编写,但是在真正高质量的代码中却是必不可少的. 看看Java中的Object对hashCode方法的描述: 1.返回对象的哈希码,是为 ...

  3. IE回车的怪异行为

    问题 IE浏览器在input中回车,会触发button按钮的click事件. 原因分析 IE浏览器中在input中回车相当于提交form,而button标签默认的类型是submit, 所以如果没有指定 ...

  4. SOCKET网络编程细节问题(4)

    SOCKET网络编程快速上手(二)——细节问题(4) 5.慢系统调用及EINTR 还记得前面readn和writen函数么?里面有个EINTR,现在就来谈谈这个,这个很重要. Linux世界有个叫信号 ...

  5. IIS日志字段详解

    IIS日志字段详解 抓住8月的尾巴,弥补下这个月的空白,事情太多,忘了写博客这回事了. IIS日志字段设置                                          网站运营时 ...

  6. jQuery特殊符号转义

    我们在使用jquery选择器的时候 对一些ID属性中有特殊符号的地方需要进行转义. 列举部分如下: <input id="entity.username" type=&quo ...

  7. MSSQL 清空日志 删除日志文件

    MSSQL 清空日志 删除日志文件 最近的项目主要做数据的归档,把数据从一个数据库拉到另一个数据库,照成新数据库的日志文件非常大:于是想把日志文件删除.最简单就是先分离数据库->删除日志文件-& ...

  8. Hibernate的clear(),flush(),evict()方法详解

    1.Clear 方法 无论是Load 还是 Get 都会首先查找缓存(一级缓存) 如果没有,才会去数据库查找,调用Clear() 方法,可以强制清除Session缓存. 例: 这里虽然用了2个get方 ...

  9. C语言与汇编“硬在哪里”——什么是面向硬件?

    Jack:为什么说C/C++语言是偏向硬件的语言呢? 我:这是把C与java等无指针/引用类编程语言相比较而得出的结论.因为java在j2ee的框架下,写的代码仅仅是逻辑,本质上和写shell脚本没啥 ...

  10. avalon1.5+中组件的定义方式

    avalon在1.5之后引入新的组件定义和使用方式,其总的宗旨是为了使定义和使用组件更加简单 组件库的概念 首先,需要注意的是,引入了组件库的概念(也可以理解为namespace),之后定义的组件必须 ...