超级变态的MySQL语句[2012-9-20]
-- mysql多表授权sql脚本制作
select concat("grant all privileges on studypaydb.",table_name," to 'sp'@'localhost';")
from tables
where table_schema='mydb' and table_name like 'sh_%'
into outfile 'D:/grant.sql';
-- 并查询
select u1.id,u1.pid,u1.content,u2.haveoptions
from (
select id,pid,content,type_id
from sh_ques
where id in (1,4)
union
select s1.id,s1.pid,s1.content,s1.type_id
from sh_ques s1,sh_ques s2
where s1.pid=s2.id
) u1,sh_ques_type u2
where u1.type_id=u2.id;
-- mysql替代变量应用示例
select @tpid:=1;
select @tpid;
set @tpid=1;
select @tpid;
-- mysql 使用替代变量
set @tpid=2;
set @num=1;
prepare stmt from "
select id,pid,content,type_id
from sh_ques
where type_id=? and pid=0
order by rand()
limit ?";
EXECUTE STMT USING @tpid, @num;
--随机取每组的一条记录
SELECT
type_id,
(SELECT id from sh_ques sub
WHERE type_id = main.type_id ORDER BY rand()
LIMIT 0,1) AS Rstr
FROM
sh_ques main
GROUP BY type_id;
--mysql如何加行号
SET @id = 0;
SELECT (@id := @id + 1) ID, name FROM tblName;
-- 分组查询每组id最大的两条记录
SELECT a.*
FROM sh_ques a
LEFT JOIN sh_ques b ON a.type_id=b.type_id AND a.id>b.id
group by a.id,a.type_id,a.content
having count(b.id)<2
ORDER BY a.type_id asc,a.id;
-- mysql数据分组后重新加行号
set @id:=0;
set @type_id:=0; -- 任意值,最好与type_id同类型
SELECT IF(@type_id=a.type_id,@id := @id + 1,@id:=1 and @type_id:=a.type_id) rID,a.* from (select * from sh_ques order by type_id desc) a
-- mysql 有则更新,无则插入
INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6)
ON DUPLICATE KEY UPDATE c=VALUES(a)+VALUES(b);
-- mysql insert ..select语句
insert into sh_record_details(qid,rid,my_answer,is_right)
select qid,rid,my_answer,if(my_answer=(select answer from sh_ques b where b.id=a.qid),1,0)
from sh_myans a
-- mysql update..select
update sh_record a
set a.score=(select b.score from sh_ques b where a.qid=b.id)
where is_right=1;
转载于:https://blog.51cto.com/liuning/999217
超级变态的MySQL语句[2012-9-20]相关推荐
- mysql语句总结_mysql语句总结
mysql语句总结 -- 1,通过windows提供的服务管理来完成 -- services.msc -- 2,dos下的命令来完成 -- 停止 -- net stop mysql -- 启动 -- ...
- 一些常用的mysql语句实例-以后照写2
specification: 规范, 规格, 产品规范, 产品规格, 技术规范, 产品说明书. 如: create_specification, 等等 创建数据库时, 显式地指明, 字符集: crea ...
- MySQL 语句整理 2019-5-3
MySQL 语句整理 在整理完Oracle的一些常见用语句后,由于MySQL的语法跟Oracle略有不同,随跟PN的MySQL视频进行了间接整理. 查询薪水大于1800, 并且部门编号为20或30的员 ...
- 100% 展示 MySQL 语句执行的神器-Optimizer Trace
在上一篇文章<用Explain 命令分析 MySQL 的 SQL 执行>中,我们讲解了 Explain 命令的详细使用.但是它只能展示 SQL 语句的执行计划,无法展示为什么一些其他的执行 ...
- PHP执行批量mysql语句
当有多条mysql语句连起来需要执行,比如 $sqls= "insert table a values(1,2); insert table a values(2,3);" 需要执 ...
- mysql trace工具_100% 展示 MySQL 语句执行的神器-Optimizer Trace
在上一篇文章<用Explain 命令分析 MySQL 的 SQL 执行>中,我们讲解了 Explain 命令的详细使用.但是它只能展示 SQL 语句的执行计划,无法展示为什么一些其他的执行 ...
- mysql语句中变量 c#_C#基础知识-您的第一个C#程序,类型和变量以及流控制语句...
mysql语句中变量 c# 建立 (Setup) LinqPad is an .NET scratchpad to quickly test your C# code snippets. The st ...
- mysql语句命令_MySQL语句和命令大全
前言 这里记录的是这两年学习工作过程中遇到的常用的 MySQL 语句和命令,部分是网上收集来的,出处已经不记得了,这里先谢过这些大佬.本文包括常见 SQL 语句,还有部分运维语句和命令,没有做详细的说 ...
- MySQL语句和命令大全
前言 这里记录的是这两年学习工作过程中遇到的常用的 MySQL 语句和命令,部分是网上收集来的,出处已经不记得了,这里先谢过这些大佬.本文包括常见 SQL 语句,还有部分运维语句和命令,没有做详细的说 ...
最新文章
- 【攻防世界008】answer_to_everything
- QT判断该文件是否存在
- 【miscellaneous】关于gst ffmpeg插件的安装心得
- 轻量高效!清华智能计算实验室开源基于PyTorch的视频 (图片) 去模糊框架SimDeblur
- 调查预测:云部署将于2018年中迎来小高峰
- 打开excel文件并写入_双击Excel表格文件时只打开程序不能直接打开文件
- 面向.NET开发人员的Dapr——总结和前景
- 重装系统计算机名称回对ug,电脑重装系统后UG软件没有卸载的情况下重新启动UG软件的方法...
- Framework学习(三)之PMS、AMS、WMS
- 使用python制作聊天框解谜游戏_使用Python写一个小游戏alien invasion!
- MySQL之增删改查(以查为主)
- Reactor模式和NIO
- BP神经网络预测模型+粒子群算法优化的BP神经网络(PSO-BP)预测模型,基于Matlab
- 笔记——力学导论(下)
- Ubunut 下安装teamview
- ep服务器修改时间,BIOS揭秘 手把手教你设置Nehalem平台
- android 画爱心进度条_android自定义圆形进度条,实现动态画圆效果
- Java算法 -- 二分查找:查找目标元素最左的位置和最右的位置、局部最小值问题求解
- 【模板】FHQ Treap
- 里氏代换原则——与多态的辩证关系