今天在一个群里,一个小伙伴问了一个问题,mysql怎么随机把字母A或者B插入到表中的某个字段中去

案例如下:

INSERT INTOt_rand(sex)VALUES(ELT(CEILING(rand() * 2),'男','女')

)

ELT(n,str1,str2,str3,...) :如果n=1,则返回str1,如果n=2,则返回str2,依次类推。如果n小于1或大于参数个数,返回NULL。ELT()是FIELD()的功能补充函数。

mysql> SELECT ELT(3,'hello','halo','test','world');+--------------------------------------+

| ELT(3,'hello','halo','test','world') |

+--------------------------------------+

| test |

+--------------------------------------+

1 row in setmysql>

FIELD(str,str1,str2,str,str3,str4...):返回str 在后面的参数列(str1,str2,str,str3,str4...)中的索引,起始索引为1。如果未在参数列中发现str 则返回0。

mysql> SELECT FIELD('halo','hello','halo','test','world');+---------------------------------------------+

| FIELD('halo','hello','halo','test','world') |

+---------------------------------------------+

| 2 |

+---------------------------------------------+

1 row in setmysql>

IFNULL(expr1,expr2):如果expr1是NULL,则返回expr2,如果expr1不是NULL,则返回expr1。IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境。

mysql> SELECT IFNULL(NULL,8);+----------------+

| IFNULL(NULL,8) |

+----------------+

| 8 |

+----------------+

1 row in setmysql> SELECT IFNULL('hello','world');+-------------------------+

| IFNULL('hello','world') |

+-------------------------+

| hello |

+-------------------------+

1 row in setmysql> SELECT IFNULL(null,'world');+----------------------+

| IFNULL(null,'world') |

+----------------------+

| world |

+----------------------+

1 row in setmysql>

应用:

如:订单记录中存储了该订单的来源类型编码,现需将其来源名称在页面列表中展示,来源信息并未单独建表存储,现需将查询语句做出修改以达到目的:

在Oracle中我们可以用decode()函数来获取到来源名称:decode(条件,值1,返回值1,值2,返回值2...,缺省值);

在Mysql中呢,我们需要ELT()、FIELD()来实现,必要的时候还会用到IFNULL()来实现最终效果。对于上述需求,我们可以采取以下sql来实现:

SELECT *,IFNULL(ELT(FIELD(type,'1','2','3','4'),'来源A','来源B','来源C','来源D'),'未知') name from order;

mysql 插入指定值_mysql实现随机把字段值插入指定表相关推荐

  1. MySQL中AES_ENCRYPT('密码','钥匙')函数 可以对字段值做加密处理

    MySQL中AES_ENCRYPT('密码','钥匙')函数 可以对字段值做加密处理        AES_DECRYPT(表的字段名字,'钥匙')函数 解密处理 例,表结构: 现在插入一条数据,对p ...

  2. mysql orderby 指定值_首先在MySQL中指定字段值ORDER BY

    要先在MySQL中按特定字段值排序,请使用ORDER BY FIELD().让我们首先创建一个表-mysql> create table DemoTable849(Color varchar(1 ...

  3. mysql 主机不存在_MySQL 当记录不存在时插入,当记录存在时更新

    MySQL 当记录不存在时插入,当记录存在时更新 2012-1-30 17:58 Monday 分类:MySQL 评论(71) 浏览(21592) MySQL 当记录不存在时插入,当记录存在时更新 网 ...

  4. mysql 中空值平均_mysql中空值和null值的区别及处理方法总结

    原帖:https://blog.csdn.net/weixin_42214393/article/details/80463912 一.首先就是在概念上的不同: 1. 空值不占空间 2. null值占 ...

  5. mysql case设固定值_MySQL CASE语句将自定义值放置为NULL

    让我们首先创建一个表-mysql> create table DemoTable ( FirstName varchar(20) ); 使用插入命令在表中插入一些记录-mysql> ins ...

  6. mysql 触发器 插入或者更新_MySQL 在触发器里中断记录的插入或更新?

    下面是一种实现的方法.思路就是想办法在触发器中利用一个出错的语句来中断代码的执行. mysql> create table t_control(id int primary key); Quer ...

  7. mysql 按指定值排序

    fruit 表有一个 name 字段, 具有以下特定的值: 苹果(Apple), 香蕉(Banana), 橘子(Orange), 梨(Pear). 每个特定的值都有一系列的品种. 比方说, 为了论证的 ...

  8. mysql按字段多条组合_MySQL按分组把字段值组合成一个结果

    MySQL如何把多个字段合并成一条记录呢?现在的需求是这样的:购物车中有很多个商品,对应于购物车表,而购物车中的每个商品会有规格,因此也对应一个规格表,而规格表是一对多的关联,即一个商品对应多个规格. ...

  9. mysql 自增语句_Mysql 自动增加设定基值的语句 | 很文博客

    有时候需要为自动增加的字段设置基值,用下面的语句即可. 核心代码: ALTER TABLE 表名 AUTO_INCREMENT = 设定的值 MySQL ALTER语法中ALTER [IGNORE] ...

最新文章

  1. 【 C 】在双链表中插入一个新值的简明程序
  2. 计算机的硬件技能,计算机的最基础——软硬件
  3. SPOJ 20713 DIVCNT2 - Counting Divisors (square)
  4. 大数据分析的思路与流程
  5. 为什么一定要重视隐式反馈?
  6. MATLAB学习笔记(1):MATLAB简介
  7. 计算机网络课设-小型校园网,计算机网络课设 小型校园网.doc
  8. 软件测试岗完美面试攻略
  9. 用Linux命令备份oracle表,Linux系统上Oracle数据库备份和还原操作说明
  10. WPS表格如何快速添加斜线表头
  11. Android 蓝牙 BLE扫描、广播、连接、数据收发源码分析(2)- inquiry扫描周围设备
  12. 北京立交桥---- “迷桥”经历和不方便后悔
  13. 美国医院权威评估体系
  14. JAVA之socket编程服务器与客户端通信--实现简易聊天室
  15. JPush+SAE+J2EE实现微信公众平台账号服务
  16. MongoDB一篇从入门到实战
  17. 解密中国互联网企业创始人,程序员打下半壁江山
  18. 美团点评2020校招系统开发方向笔试题(编程题题解)
  19. 小米副总裁崔宝秋离职 原掌管的清河大学并入人力资源部
  20. Qt入门教程【对话框】QInputDialog输入对话框

热门文章

  1. idea 快速导入实现父类方法_教你快速吸引精准粉丝实现流量变现的方法
  2. win10计算机无法睡眠怎么办,Windows10笔记本电脑无法睡眠怎么处理
  3. 群同态基本定理证明_近世代数(3)——群的基本性质
  4. android 代码设置居右_android如何让textview文字居右
  5. 老大说要自动化测试,我是怎么做的可以看看
  6. Python面向对象编程:入门类和对象
  7. python动态页面元素爬取_python编程练习:爬虫爬取动态网页批量下载气象站数据...
  8. android dimensions.xml,[Android Studio #2] 操作資源XML檔
  9. Java单元测试的意义_单元测试重要意义及方法介绍
  10. servlet增删改查实例_SpringBoot系列(2)整合MongoDB实现增删改查(完整案例)