关于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笔记--问题总结

    1. 垃圾回收算法 标记-清除算法 标记-清除算法是最基本的算法,和他的名字一样,分为两个步骤,一个步骤是标记需要回收的对象.在标记完成后统一回收被标记的对象.这个算法两个问题.一个是效率问题,标记和 ...

  2. 2019.02.09 bzoj1042: [HAOI2008]硬币购物(完全背包+容斥原理)

    传送门 题意简述:有四种面值的硬币,现在qqq次询问(q≤1000)(q\le1000)(q≤1000),每次给出四种硬币的使用上限问最后刚好凑出sss块钱的方案数(s≤100000)(s\le100 ...

  3. Codeforces 1110 简要题解

    文章目录 A题 B题 C题 D题 E题 F题 G题 传送门 众所周知ldxoildxoildxoi这种菜鸡选手是不会写HHH题的,因此该篇博客只有AAA题至GGG题的题解,实在抱歉. A题 传送门 题 ...

  4. react属性绑定

    1.属性值绑定state里的数据,不用引号 class App extends Component { constructor(props){ super(props); this.state = { ...

  5. Router components

    Input Unit The Input unit contains virtual channel buffers and an input VC arbiter. Route Info: use ...

  6. 第20章:MongoDB-聚合操作--聚合管道--$unwind

    ①$unwind 在查询数据的时候经常会返回数组信息,但是数组并不方便信息的浏览,所以提供有“$unwind”可以将数组数据变为独立的字符串内容. 将文档中数组类型的字段拆分成多条,每条文档包含数组中 ...

  7. 第02章:MongoDB安装

    ①下载 https://www.mongodb.com/  下载所需版本的tar.gz ②解压安装 tar -zxvf mongodb-3.2.12.tar.gz mv -r mongodb-3.2. ...

  8. 安卓 build/core/Makefile 以及main.mk

    android make 系统总共分为四层 arch board device product 在各个字android.mk文件中引用的定义都存放在./build/core/下!比如android.m ...

  9. typecho 调用评论最多热门文章

    在当前主题的functions.php文件中添加以下函数代码: function getHotComments($limit = 10){ $db = Typecho_Db::get(); $resu ...

  10. PI3HDX1204B

    PI3HDX1204B用于HDMI2.0 6Gpbs的中继器,它有可编程的高均衡,输出摆幅和去加重控制模式.当传输为6Gpbs时,最大的EQ是22dB. PI3HDX1240B的EQ,SW和去加重可以 ...