关于SQL的常见操作主要是增、删、改、查。

  1、增,顾名思义就是新增数据(insert into)。该语句用于向表中插入新纪录。insert into有两种用法。

    (1)、无需指定要插入数据的列名,只提供被插入的值,

      语法:INSERT INTO table_name VALUES (value1,value2,value3,...);

      但是这种方法要注意一点,那就是需要列出插入行中的每一列数据,如果某一列没有数据的话,可以使用引号替代,如果没有列出插入行中每一列数据,就会报错。

    (2)、指定列名及被插入的值,

      语法:INSERT INTO table_name (column1,column2,column3,...) VALUES (value1,value2,value3,...);

      通过这种方法也可以向指定的列中添加数据

    (3)、一次性向表中插入多条数据。

      操作为,insert into table_name values (value1,value2,...), (value3, value4,...), (value5, value6)。可以指定列名,也可以不指定列名,如果指定了列名,则是向指定列添加数据。如果不指定列名,那么则需要列出插入行中的每一列数据。

  2、删,也就是删除数据,这里其实也有两种,delete与drop。然而这两种的效果确实不一样的,虽然都能删除数据。

    (1)、delete。该语句用于删除表中的记录。语法:DELETE FROM table_name WHERE some_column=some_value;

      例如,要从myTable表中删除title为 ‘扫毒’的数据。操作为 delete from [dbo].[myTable] where title='扫毒'

      如果是要删除myTable表中的所有数据,操作为 delete from [dbo].[myTable],此时表中的数据都会被删除,但是表的结构、属性、索引等仍保持不变,也不会释放内存空间。

      注意:使用delete删除数据时,如果省略了where子句,那么所有的数据都将会被删除。

    (2)、drop。该语句用于删除表,且内存空间会被释放。

      例如,要删除表myTable,那么操作为,drop table [dbo].[myTable]

    (3)、删除表中重复的数据。可以这样做,首先去除重复,再获取n条数据并将其插入到临时表中,再将原表的数据删除,然后将临时表的数据插入到原表,最后删除临时表

      例如表myTable中有多条title相同的数据,要删除相同的,只保留一条,那么操作为:           

      select distinct * into [dbo].[newTable] from [dbo].[myTable];
      delete from [dbo].[myTable];
      insert [dbo].[myTable] select * from [dbo].[newTable];
      drop table [dbo].[newTable];

  3、改,也就是更改表中的数据(update),用于更新表中已存在的数据。

    语法:UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value;

    例如,要将myTable表中 title为 ‘扫毒’ 的这条数据,将play改为 ‘古天乐、张家辉、刘青云’,那么操作为,update [dbo].[myTable] set play='古天乐、张家辉、刘青云' where title='扫毒'

    注意:使用update更新表中数据时,如果省略了where子句,那么表中所有数据都将被更新。

  4、查,也就是查询表中的数据(select)。

    语法:SELECT column_name,column_name FROM table_name; 或 SELECT * FROM table_name;

    例如,要查询表myTable中的所有数据,可以使用 select * from [dbo].[myTable] 或者将 "*"更改为表中数据行每一列的数据名。

    (1)、选取表中包含某字符的数据。

      例如,选取表myTable中play包含 ‘古’ 的所有数据,则操作为,select * from [dbo].[myTable] where play like '%古%'

    (2)、选取表中以某字符开始的数据。

      例如,选取表myTable中play以 “古” 开头的所有数据,则操作为,select * from [dbo].[myTable] where play like '古%'

    (3)、选取表中以某字符结尾的数据。

      例如,选取表myTable中play以 “古” 结尾的所有数据,则操作为,select * from [dbo].[myTable] where play like '%古'

    (4)、选取表中指定长度包含指定字符的数据。

      例如,选取表myTable中play包含三位且中间为 “古”的数据,则操作为 select * from [dbo].[myTable] where play like '_古_'

      选取表myTable中play包含三位且开头为 “古”的数据,则操作为 select * from [dbo].[myTable] where play like '古__'

      选取表myTable中play包含三位且结尾是 “古” 的数据,则操作为 select * from [dbo].[myTable] where play like '__古'

    ps:%  => 代表0个或多个字符

      _   => 代表1个字符

    (5)、使用in操作符,该操作符允许在where子句中规定多个值。

      例如,要选取表myTable中title为 "扫毒" 或 "贪狼" 的数据,则操作为 select * from [dbo].[myTable] where title in ('扫毒', '贪狼')

    (6)、between操作符,选取介于两个值之间的数据范围内的值。这些值可以是数值、文本或者日期。

      例如,要选取表myTable中score 介于 10 到 200 间的数据。则操作为 select * from [dbo].[myTable] where score between 10 and 200

      注意:在某些数据库中,BETWEEN 选取介于两个值之间但不包括两个测试值的字段。

       在某些数据库中,BETWEEN 选取介于两个值之间且包括两个测试值的字段。

  在某些数据库中,BETWEEN 选取介于两个值之间且包括第一个测试值但不包括最后一个测试值的字段。

    (7)、选取要返回指定数目的数据(select top)。

      语法:SELECT TOP number|percent column_name(s) FROM table_name;

      例如,要选取表myTable中前100条数据,则操作为 select top 100 * from [dbo].[myTable]

      选取表myTable中前50%的数据,则操作为 select top 50 percent * from [dbo].[myTable]

    (8)、返回表中唯一不同的值(distinct)。

      语法:SELECT DISTINCT column_name,column_name FROM table_name;

      例如表myTable中有多条  title 为 ‘扫毒’的数据,现在只想返回一条,那么操作为 select distinct title from [dbo].[myTable]

关于SQL的常用操作(增、删、改、查)的更多相关文章

  1. 好用的SQL TVP~~独家赠送[增-删-改-查]的例子

    以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化.  本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...

  2. django单表操作 增 删 改 查

    一.实现:增.删.改.查 1.获取所有数据显示在页面上 model.Classes.object.all(),拿到数据后,渲染给前端;前端通过for循环的方式,取出数据. 目的:通过classes(班 ...

  3. iOS sqlite3 的基本使用(增 删 改 查)

    iOS sqlite3 的基本使用(增 删 改 查) 这篇博客不会讲述太多sql语言,目的重在实现sqlite3的一些基本操作. 例:增 删 改 查 如果想了解更多的sql语言可以利用强大的互联网. ...

  4. django ajax增 删 改 查

    具于django ajax实现增 删 改 查功能 代码示例: 代码: urls.py from django.conf.urls import url from django.contrib impo ...

  5. iOS FMDB的使用(增,删,改,查,sqlite存取图片)

    iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...

  6. C# ADO.NET (sql语句连接方式)(增,删,改)

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  7. ADO.NET 增 删 改 查

    ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...

  8. MVC EF 增 删 改 查

    using System;using System.Collections.Generic;using System.Linq;using System.Web;//using System.Data ...

  9. MongoDB增 删 改 查

    增 增加单篇文档 > db.stu.insert({sn:'001', name:'lisi'}) WriteResult({ "nInserted" : 1 }) > ...

  10. python基础中的四大天王-增-删-改-查

    列表-list-[] 输入内存储存容器 发生改变通常直接变化,让我们看看下面列子 增---默认在最后添加 #append()--括号中可以是数字,可以是字符串,可以是元祖,可以是集合,可以是字典 #l ...

随机推荐

  1. Java 208 道面试题:Java 基础模块答案

    目前市面上的面试题存在两大问题:第一,题目太旧好久没有更新了,还都停留在 2010 年之前的状态:第二,近几年 JDK 更新和发布都很快,Java 的用法也变了不少,加上 Java 技术栈也加入了很多 ...

  2. (16)The beauty of what we'll never know

    https://www.ted.com/talks/pico_iyer_the_beauty_of_what_we_ll_never_know/transcript 00:13One hot Octo ...

  3. Codeforces Round #523 (Div. 2) F. Katya and Segments Sets (交互题+思维)

    https://codeforces.com/contest/1061/problem/F 题意 假设存在一颗完全k叉树(n<=1e5),允许你进行最多(n*60)次询问,然后输出这棵树的根,每 ...

  4. 避免使用eval()

    eval()可以将任意的字符串当做一个JavaScript代码来执行. eval()使用实例: // 烦模式 var property = 'name'; console.log(eval('obj. ...

  5. TypeError: 'MongoClient' object is not callable

    在声明数据库的时候,将中括号[ ]换成了圆括号() 错误:

  6. (转)ASP.NET MVC 3和Razor中的@helper 语法

    转自:http://kb.cnblogs.com/page/102191/ ASP.NET MVC 3支持一项名为“Razor”的新视图引擎选项(除了继续支持/加强现有的.aspx视图引擎外).当编写 ...

  7. maven依赖管理

    maven依赖管理 1.依赖范围   (依赖相当于java中的import  是否需要导入别的jar包) 使用控制依赖与三种classpath(编译期,测试时期,运行时期)的关系 complie    ...

  8. _ZNote_Qt_对话框_模态非模态

    QDialog(及其子类,以及所有Qt::Dialog类型的类)的对于其 parent 指针都有额外的解释:如果 parent 为 NULL,则该对话框会作为一个顶层窗口,否则则作为其父组件的子对话框 ...

  9. shell wc -l

    shell 命令之 wc -l 给出一个比较常用的命令: cat * | wc -l 查询当前文件夹下的文件的总行数. 原理就是统计了文件中换行符的数量.

  10. Swift3 页面顶部实现拉伸效果代码

    //懒加载 //顶部需要拉伸自定义视图 lazy var headView:MyHeaderView = { //let hframe = CGRect(x: 0, y: 0, width: swid ...