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")); |

相关推荐
2021-01-27
Client does not support authentication protocol requested by server
宿命论是那些缺乏意志力的弱者的借口。——罗曼·罗兰 今天试了试使用js连接数据库,发现报错Client does not support authentication protocol requested by server; consider upgrading MySQL client 乍一看,代码好像没问题 1234567891011121314151617181920var mysql = require("mysql");let connection = mysql.createConnection({ host: "127.0.0.1", port: 3306, user: "root", password: "789456", database: "ruben"});connection.connect();connection.query("select * from user", funct...
2021-12-03
mysql重置自增主键坑
商人的兴趣就在那些能找到财富的地方。——埃伯克 今天重置mysql自增主键时遇到个坑,明明sql执行了 1ALTER TABLE table_name AUTO_INCREMENT= 1; 但还是修改失败了 后来发现原来是因为当前表最大id比我设置的自增id大导致的 而且这种情况还不报错,提示sql正常执行,就挺坑的 最后把表内数据调整了,成功重置自增id 可以通过 1SHOW TABLE STATUS WHERE NAME = 'user'; 查看表状态
2024-06-10
ClickHouse快速入门
幻想中有比显示更高的东西,现实中也有比幻想更高的东西,把两者结合起来是最完美的。——列夫·托尔斯泰 官网: https://clickhouse.com/ 中文文档: https://clickhouse.com/docs/zh 我们执行命令运行 1curl https://clickhouse.com/ | sh 可以看到非常方便就好了 1234567891011121314151617181920212223Last login: Tue Jun 4 22:23:34 on ttys001curl https://clickhouse.com/ | shThe default interactive shell is now zsh.To update your account to use zsh, please run `chsh -s /bin/zsh`.For more details, please visit https://support.apple.com/kb/HT208050.GithubIireAchao:blog achao$ curl htt...
2022-02-22
mysql导出导入
成熟意味着停止展示自己并学会隐藏自己。——《失踪的孩子》 官方文档:https://dev.mysql.com/doc/refman/8.0/en/backup-and-recovery.html 我们可以使用mysql自带的导出工具mysqldump进行导出,我们进入到mysql的bin目录,运行命令 1mysqldump -u[用户名] -p --default-character-set=[编码格式] --databases [数据库名] > [导出路径] 例如我此处的: 1mysqldump -uroot -p --default-character-set=utf8 --databases test > D:\file\tmp\xxx.sql 输入完毕后需要输入密码,我们输入就行了 然后我们可以在mysql客户端中使用source命令,首先连接mysql 1mysql -uroot -p 输入密码后我们切换到想导入的数据库 1use test; 然后使用source 1source D:/file/tmp/xxx.sql; 注意反斜杠转义问题...
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匹配多行,则只会更新一行,所以我们需要避免在有多个唯一索引的表上使用本语法 我们在表内没...
2020-06-19
mysql使用druid时自动断开连接解决方案
今天接手了一个上了年龄的项目,用的是smm,数据库连接池用的druid,数据库版本较老,是5.0的mysql,我升级成mysql8.0后,一开始还没问题,然后大概每次无连接2分钟后数据库自动断开。。。 前端妹子立马跟我说接口报错了,我咯噔心里一慌,让前端妹子给我截一下报错信息(后台日志刷的太多,当时没注意到)。然后前端妹子说,哦又好了,我当时意识到不对劲,但也没有深究,直到这样的问题出了几次,每次一刷新又好了,我开始意识到问题的严重性。 一开始我复制了报错信息,也就是这一段 123Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failureThe last packet successfully received from the server was 8848 milliseconds ago. The last packet sent successfully to the server was 8848 milliseconds ago. 搜了半天,网上...

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