首页 > 数据库 >mysql一些小知识点

mysql一些小知识点

时间:2023-06-13 19:01:43浏览次数:47  
标签:知识点 mysql 一些 null where id select mod

mysql的三值逻辑

mysql 使用的是三值逻辑:TRUE   FALSE   UNKNOWN。


任何与null值进行的比较都会与第三种值 UNKNOWN 做比较。这个“任何值”包括 null 本身。


所以mysql 提供了 is null 和 is not null 两种操作来对null做特殊判断


因此,在进行select查询时,如果查询到的值有为空的时候,在where语句中我们就需要再做一


个额外的条件判断 ,比如:'name is null';


举个栗子:


返回一个用户列表,列表中用户的年龄都不是18.


select name from user where age <> 18 or  age is null

not in

select Name 'Customers' from Customers where Id not in(select CustomerId from Orders)

用来查询不在某个值集的数据


举个栗子:


查询user表中年龄不在18,15,20的用户


select name from user where age not in(18,15,20)

推荐:数据库入门


mod(a,b)

在sql中的意思是 a / b 的余数,如果某个字段需要是偶数或者奇数时就可以使用mod。


以id为例:


mod(id,2)=1 是指id是奇数。


mod(id,2)=0 是指id是偶数。


left()

left()函数是一个字符串函数,它返回具有指定长度的字符串的左边部分。


格式:left(str,length)。


if(exer,v1,v2)

语法结构是if(exer,v1,v2)


expr为一个表达式,表达式expr结果为ture,返回v1的值,为flase返回v2。


update salary set sex=if(sex='m','f','m')

标签:知识点,mysql,一些,null,where,id,select,mod
From: https://blog.51cto.com/u_16040716/6472002

相关文章

  • 有些时候想回忆一些事情,又想忘记一些事情,却发现是同一件事
    这里放一个粗略的计划表。我一直都在,从未离开。6月15日:大户爱生日。6月17日:会考。6月18日:买一堆我喜欢的东西。6月2?日:期末考试。会有一周的时间复习(其实是现学)期末考试结束后至7月5日:在学校上竞赛。7月6日至7月21日:去成都外国语学校外培。7月22......
  • 工作记录_mysql_AND优先级高于OR优先级
    1.错误示例SELECT t.task_department_name, COUNT(*)total_count, SUM(CASEWHENstatus='done'THEN1ELSE0END)ASfinish_count, SUM(CASEWHENstatus<>'done'THEN1ELSE0END)ASunfinish_countFROM`t_task`t--WHEREtask_typ......
  • MySQL字符索引没用上问题
    某一天,接口突然502,运维同学说没有可用的PHP进程了,看监控说是这个接口夯住了,导致请求进不来,临时把这个接口给返回了200(PS:线上这个接口没有实际作用,所以这么操作了);给了慢查询的SQL,用explain看了下,发现竟然没有用到创建的索引,此时数据库的量有大概150万行,对SQL里where字段加了双引......
  • 记录一段mysql代码
    SELECTf.*,tmp.userid,tmp.cishuFROMfx_userf,(SELECTa.id,b.useridASuserid,COUNT(*)AScishuFROM`fx_user`ASaLEFTJOIN`fx_plan`ASbONa.id=b.useridANDb.fxtype=0GROUPBYa.id)tmpWHEREf.id=tmp.idANDpriority=1ORDERBYid......
  • C#连接MySql数据库的方法
     用MySQLDriverCS连接MySQL数据库   先下载和安装MySQLDriverCS,地址:   http://sourceforge.net/projects/mysqldrivercs/   在安装文件夹下面找到MySQLDriver.dll,然后将MySQLDriver.dll添加引用到项目中   注:我下载的是版本是MySQLDriverCS-n-EasyQueryTools-4.0......
  • mysql mariadb修改端口后启动失败
    修改端口号启动失败关闭SETLinux临时关闭,不需要重启电脑,重启后失效执行命令:setenforce0永久关闭,需要重启机器,修改/etc/selinux/config文件将SELINUX=enforcing改为SELINUX=disabled重启mysql服务即可......
  • spring boot连接Mybatis数据库的配置文件(MySql、SQLserver、Oracle)
    序号类型地址1MySQLMySQL操作之概念、SQL约束(一)2MySQLMySQL操作之数据定义语言(DDL)(二)3MySQLMySQL操作之数据操作语言(DML)(三)4MySQLMySQL操作之数据查询语言:(DQL)(四-1)(单表操作)5MySQLMySQL操作之数据查询语言:(DQL)(四-2)(多表查询)6MySQLMySQL操作之数据控制语言:(DC)(五)7MySQLMySQL操作之数......
  • mysql笔记
    1.mysql初始密码修改:进入mysql后,输入:ALTERUSERroot@localhostIDENTIFIEDBY'新密码';2.mysql打开命令:1.mysql-uroot-p,密码;2.mysql-uroot-p密码;3.显示所有数据库:showdatabases;;4.删除数据库:dropdatabase数据库名;;......
  • MySQL 8 配置文件
    #[client]#user=root#password=1111aaA_[mysql]prompt="\u@mysqldb\R:\m:\s[\d]>"no-auto-rehash[mysqld_safe]malloc-lib=tcmalloc[mysqldump]single-transaction[mysqld]#basicsettings#server-id=11port=3306user=mys......
  • mysql数据库备份及恢复命令mysqldump,source的用法
    还原一个数据库:mysql-hlocalhost-uroot-p123456www<c:/www.sql备份一个数据库:mysqldump-hlocalhost-uroot-p123456www>d:/www2008-2-26.sql  //以下是在程序中进行测试//$command="mysqldump--opt-h$dbhost-u$dbuser-p$dbpass$dbname|gzip>$backup......