mysql随机查询(二)
发表于|更新于
|浏览量:
活教会我思考,可思考没有教会我生活。——赫尔芩
之前写过mysql随机查询
今天学到一个新方式:
1 | SELECT * FROM user_info ORDER BY rand() ASC limit 1 |
非常的简单方便
对应mp的写法:
1 | List<UserInfo> list = Database.list(Wrappers.query(new UserInfo()).orderByAsc("rand()").last("limit 1")); |

相关推荐
2022-02-06
INSERT ... ON DUPLICATE KEY UPDATE Statement
打开mysql文档,总会有新发现。——碧安瑶 我们在使用INSERT语句时,有时会有这样的需求,不存在就新增,存在就更新 此时我们可以使用INSERT ... ON DUPLICATE KEY UPDATE语句 就像mysql官方文档中提到的那样,我们如果将a列设为UNIQUE唯一索引或者主键时,并且当前表已经存在了a=1的数据,对于这种情况,下面两条sql的结果是相等的 当然如果不满足上方条件,则会新增一条数据 1234INSERT INTO t1 (a,b,c) VALUES (1,2,3) ON DUPLICATE KEY UPDATE c=c+1;UPDATE t1 SET c=c+1 WHERE a=1; 对于InnoDB引擎的表,此处的新增可能会触发自增列,但修改操作不会触发 如果上方的唯一索引再加一个b列,则上方第一条sql和下方sql结果相等 1UPDATE t1 SET c=c+1 WHERE a=1 OR b=2 LIMIT 1; 注意如果此处a=1 or b=2匹配多行,则只会更新一行,所以我们需要避免在有多个唯一索引的表上使用本语法 我们在表内没...
2025-06-29
dble
好学近乎知,力行近乎仁,知耻近乎勇。一一《中庸》 https://github.com/actiontech/dble https://opensource.actionsky.com/ dble:高性能 MySQL 分库分表中间件,助力数据库水平扩展在互联网业务持续增长的今天,单台 MySQL 数据库的性能瓶颈和容量瓶颈愈发突出。面对数据量级和访问压力的持续提升,如何平滑实现 MySQL 的分库分表和在线扩展,成为众多企业技术团队亟需解决的问题。由上海爱可生信息技术股份有限公司开源和维护的 dble(发音为“double”,取意“更少 bug,没有 ou”),正是面向这一需求的专业级解决方案。 一、dble 简介dble 是一款专为 MySQL 设计的高可扩展性数据库中间件,其核心功能是实现 MySQL 的分库分表(Sharding)、高可用集群和复杂 SQL 的分布式优化。dble 诞生于实践一线,已在银行等关键场景大规模应用,并作为爱可生公司“云树分布式数据库软件(CTREE Shard)”的开源版本持续迭代。 二、核心特性1. 透明分库分表 支持在业务无感知的情况...
2023-06-28
解决不能在mysql唯一索引使用函数问题
我们在伤害别人之前,要想到别人也会同样伤害我们。——达·芬奇 遇到不能在mysql唯一索引使用函数问题 可以使用虚拟列,例如下面的例子 1234# 添加虚拟列,为`date`字段格式化为月计算出来得到`month`字段ALTER TABLE `my_table` ADD COLUMN `month` VARCHAR(7) AS (DATE_FORMAT(`date`, '%Y-%m')) VIRTUAL;# 添加唯一索引到`month`和其他字段,组成联合唯一索引ALTER TABLE `my_table` ADD UNIQUE INDEX uk_date (`month`, `gmt_deleted`);
2025-01-18
nocodb
为了那一句话,流尽血的败北!多少次我都能挺下来。——朝雾卡夫卡的《文豪野犬》 最近在探索一些开源项目时,发现了一个非常有意思且实用的工具 —— NocoDB。它是一个开源的无代码数据库平台,可以帮助开发者将传统数据库(如 MySQL、PostgreSQL 等)转化为一个可视化的表格形式。通过 NocoDB,开发者和非开发者都可以像使用电子表格一样管理数据库内容,非常适合团队协作和快速原型开发。 NocoDB 通过其直观的用户界面,允许用户通过拖拽、点击等方式直接操作数据库中的数据,而无需编写任何 SQL 语句。无论是小型项目还是团队协作,NocoDB 都能极大地提升开发效率,特别是对于那些没有数据库开发经验的用户来说,它提供了一种轻松操作数据库的方式。 NocoDB 的安装和使用非常简单,适合不同操作系统和开发环境。你可以通过以下步骤轻松搭建: 安装首先,你可以通过 Docker 轻松地部署 NocoDB,以下是使用 Docker 部署的步骤: 1docker run -d -p 8080:8080 nocodb/nocodb 执行这条命令后,NocoDB 会在本地启动...
2020-08-20
mysql一次给数据库所有表加字段
执行脚本 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950DROP PROCEDUREIF EXISTS addColumn;DELIMITER $$CREATE PROCEDURE addColumn () BEGIN-- 定义表名变量 DECLARE s_tablename VARCHAR ( 100 );/*显示表的数据库中的所有表SELECT table_name FROM information_schema.tables WHERE table_schema='databasename' Order by table_name ;*/#显示所有 DECLARE cur_table_structure CURSOR FOR SELECT table_name FROM INFORMATION_SCHEMA.TABLES -- databasename = 数据库名称 WHERE table...
2021-07-29
索引操作
一个人的礼貌是一面照出他的肖像的镜子。——歌德 自己整理的mysql对于索引操作的sql: 12345678910111213141516171819202122232425262728293031323334353637383940CREATE TABLE `user` ( -- 创建表时指定主键索引 `id` BIGINT ( 20 ) PRIMARY KEY NOT NULL COMMENT '主键', `gmt_create` datetime ( 0 ) NOT NULL COMMENT '创建时间', `gmt_modified` datetime ( 0 ) NOT NULL COMMENT '修改时间', `is_delete` TINYINT ( 1 ) NOT NULL DEFAULT 0 COMMENT '逻辑删除字段', `username` VARCHAR ( 32 ) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci U...

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog