MySQL - 数据查询_简单查询_in查询详解

MySQL中,使用IN关键字可以查询字段值在特定集合中的记录。这适用于需要从多个值中筛选的情况。例如,从用户表中查找特定用户名对应的密码。同时,通过NOT IN可以查询非集合内的数据。但需要注意,如果集合中有NULL值,使用NOT IN将无法返回任何结果。
摘要由CSDN通过智能技术生成

数据查询

查询数据是指从数据库中获取所需要的数据。如Jack 要达到验证用户名和密码的目的,就需要从数据库已保存的用户表中读取当前用户的密码进行验证,以验明正身!保存查询数据是数据库操作中常用且重要的操作。用户可以根据自己对数据的需求,使用不同的查询方式,获得不同的数据。

IN查询

有的时候,当我们需要查询的目标记录限定在某个集合中的时候,在MySQL中可以使用关键字IN来实现,关键字IN可以实现判断字段的数值是否在指定集合中,该关键字的具体语句形式如下:

SELECT field1,field2,…,fieldn   
FROM tablename WHERE filedm IN(value1,value2,value3,…,valuen);   

:参数fieldn表示名称为tablename的表中的字段名,参数valuen表示集合中的值,通过关键字IN来判断字段fieldm的值是否在集合(value1,value2,value3,…,valuen)中,如果字段fieldm的值在集合中,就满足查询条件,该记录会被查询出来,否则不会被查询出来。

mysql>  create database school;   #创建数据库school  
mysql>  use school;   #选择数据库school  
mysql> create table class(id int UNIQUE AUTO_INCREMENT, name varchar(128) UNIQUE, teacher varchar(64));       #创建表class,指定id 字段自增长  
mysql>  insert into class(id, name, teacher) values(1, '一班', 'Martin'),(2,'二班', 'Rock'),(3, '三班', 'Janny'),(4,'四班', 'Janny');  # 插入多条记录   
mysql> select * from class where teacher in ('Martin','Rock') ;  #查询class表中的teacher 域是martin 和Rock 的记录   

使用NOT IN可以反向查询非集合中的数据

SELECT field1,field2,…,fieldn
FROM tablename WHERE filedm NOT IN(value1,value2,value3,…,valuen);

集合查询的注意: 集合中慎用 NULL
在具体使用关键字IN时,查询的集合中如果存在NULL,则不会影响查询,NULL 存不存在的效果都一样;但如果使用关键字NOT IN,查询的集合中如果存在NULL,则不会查询到任何的结果。

具体操作

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

结语

时间: 2020-07-11

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值