insert into的用法

1.一条insert into 可以插入多条记录

2.insert into 能判断主键是否冲突,和做出冲突处理

如果主键冲突的话会报错,
还能写成如果冲突就更新的形式
格式为  : insert into 表名 (字段列表) values (字段值列表) on duplicate key update 字段=值,字段=值(列表);

3.insert into 表名 select 语句

注意,并不是一定要字段数一致,才可以完成操作,只要是字段数量与字段类型一致,就可以完成插入!

select的用法

1.基本查询语句的结构

select [字段表达式列表] [from子句] [where 子句] [group by子句] [having 子句] [order by子句] [limit 子句]

2.字段表达式字句

如下:在select 后面可以出现表达式;

如果为字段名那么字段名是一个变量的概念能参与运算;

因此可以利用多种运算符来形成sql中的表达式;

关系运算符:

也可以是一个列表:

每个表达式可以有一个别名,在显示字段列表的时候,显示的别名 
用的是 as关键字 as也是可以省略的 但是不建议省略

4.from字句

from后面是查询的来源,也就是表名
from后面可以写表的列表用逗号分开;

因为这个时候没有条件约束约束
所以就形成了一个笛卡尔积:也就是A集合和左右的B级和里面的元素分别对应;
所有的两个集合中所有字段都会显示出来(包括重名的)

可以为访问的表名起别名,select后面可以【表名.字段名】的格式来选出不同表中的值例如:

dual问题

 
dual表示的虚表名
例如下面的语法:

规定小这个语法就是为了使语法更加规范;

where 字句,条件查询字句

where 条件表达式
当忽略where,什么都不写的时候表示永远为真;
where 找到每条记录并依次执行条件表达式,按照根据条件结果返回数据;

形成条件表达式基本要素:
数据 (变量) 运算符 ,函数调用;
典型的运算符:
关系运算符: < >  <=  >=   =  !=
like模糊查询 like 模式匹配符‘
可以使用% 和_作为通配符

有like就会有not like

between a  and b  在某某区间上  【闭区间】

in 在某个集合之内
in(集合列表)
not in 不在某个集合中
not in (集合列表)

注意 between 和 in   的区别,between 是区间 in 是集合
 
关于null的判断
无论什么算术运算 只要有null的参与,就肯定是null

做位运算的时候 null和非空相与为1  其余都为null

应该是使用is null 或者 is not null 来判断

函数isnull()和not isnull() 也是可以判断的;;

---恢复内容结束---

数据库中增加操作insert into的用法和查询select的用法的更多相关文章

  1. 在数据库中添加数据以后,使用Mybatis进行查询结果为空

    在数据库中添加数据以后,使用Mybatis进行查询结果为空,这是因为数据库中添加数据忘记commit的缘故.

  2. PHP json的插入和解析在数据库中的操作

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. PHP中往数据库中存储json数据在项目开发中也经常遇到,下面我就 ...

  3. mysql数据库中插入数据INSERT INTO SET的优势

    往mysql数据库中插入数据.以前常用 INSERT INTO 表名 (列名1,列名2…) VALUES(列值1,列值2); 如果在PHP程序中,就会写成如下示例(往商品库里增加商品) $sql = ...

  4. 浏览器中上传Excel文件,服务器获取Excel字段。写入的数据库中。操作Excel的方式jxl和poi。

    从Excel中获取字段,官方给我们提供了方法,地址https://poi.apache.org/components/spreadsheet/quick-guide.html#CellContents ...

  5. mysql数据库中常用操作汇总

    一.查询数据库的基本信息: 1.    /* 查询数据库 ‘boss’ 所有表及注释 */SELECT TABLE_NAME,TABLE_COMMENT FROM information_schema ...

  6. android源码中,在系统多媒体数据库中增加一个字段

    由于项目需求,在系统多媒体管理数据库里的存储图像文件的表中需要新增加一个字段,源码在:项目\packages\providers\MediaProvider\MediaProvider.java下,在 ...

  7. delphi数据库进行增加操作时,怎么判断插入的这个值是否已经存在?

    //增 procedure TForm1.btnAddClick(Sender: TObject); begin ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQu ...

  8. 数据库中查出来的时间多8小时&查询数据正常展示少8小时

    将serverTimezone的配置改为Asia/Shanghaiurl: jdbc:mysql://127.0.0.1:3306/bfc?useUnicode=true&characterE ...

  9. 【mybatis】service层中一个方法中使用mybatis进行数据库的 多个修改操作,可能是update也可能是delete操作,但是sql语句命名执行并且在控制台打印出来了,但是数据库中未更新到数据【事务的问题】

    问题描述: service层中一个方法中使用mybatis进行数据库的 多个修改操作,可能是update也可能是delete操作,但是sql语句命名执行并且在控制台打印出来了,但是数据库中未更新到数据 ...

随机推荐

  1. C#抽象类与抽象方法--就是类里面定义了函数而函数里面什么都没有做的类

    看一下代码应该就可以了 using System; using System.Collections.Generic; using System.Linq; using System.Text; na ...

  2. .NET Core 对象到字节数组的序列化和反序列化

    .NET Core中利用MemoryStream和BinaryFormatter可以实现对象到字节数组的序列化和反序列化: 定义ObjectSerializer类,实现对象到字节数组的序列化和反序列化 ...

  3. 树形DP 复习

    树形DP 树形DP:建立在树上的动态规划 一般有两种传递方式:根→叶或叶→根 前者出现在换根DP中,一般操作是求出某一个点的最优解,再通过这一个点推知其他点的最优解. 后者是树形DP的常见形式,一般树 ...

  4. 20155320《网络对抗》Exp2 后门原理与实践

    20155320<网络对抗>Exp2 后门原理与实践 [实验内容] (3.5分) (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, ...

  5. Getting Start chrome-extension demo

    写一个小小的chrome扩展demo~ 准备工作 了解一下插件chrome-extension: 在应用商店里的插件基本上都是以.crx为文件后缀,该文件其实就是一个压缩包,包括插件所需要的html. ...

  6. 【转】CentOS 5 上安装git

    转自 http://www.cnblogs.com/Neddy/archive/2011/02/28/1967548.html 注意安装的时候 都要以root身份 //先安装git依赖的包 yum i ...

  7. 《图说VR入门》——入门汇总

    本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/details/53818922 作者:car ...

  8. mfc 类三种继承方式下的访问

    知识点 public private protected 三种继承方式 三种继承方式的区别 public 关键字意味着在其后声明的所有成员及对象都可以访问. private 关键字意味着除了该类型的创 ...

  9. Linux日记Day3---Linux的文件属性与目录配置

    Linux最优秀的地方之一,就在于它的多用户.多任务环境.为了让用户具有较安全的管理机制,文件的权限管理是很重要的.Linux通常将文件的访问方式分为分为三个类别,分别是owner/group/oth ...

  10. Jenkins控制台输出乱码

    一.问题详情 jenkins构建mav任务,在控制台显示乱码: 二.原因分析 1. 查看系统编码和tomcat的编码都正常 # grep encoding /usr/local/tomcat/conf ...