700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > mysql查询语句 变量_mysql查询语句中用户变量的使用

mysql查询语句 变量_mysql查询语句中用户变量的使用

时间:2020-06-09 15:08:05

相关推荐

mysql查询语句 变量_mysql查询语句中用户变量的使用

先上代码吧

SELECT `notice`.`id` , `notice`.`fid` , `notice`.`has_read` , `notice`.`notice_time` , `notice`.`read_time` , `f`.`fnum` , `f`.`forg` , `f`.`fdst` , `f`.`actual_parking` AS `parking` , `f`.`scheduled_deptime` , `f`.`estimated_deptime` , `f`.`actual_deptime` , `f`.`scheduled_arrtime` , `f`.`estimated_arrtime` , `f`.`actual_arrtime` , `f`.`is_vip` , `f`.`aoc_notice`

FROM (

select

t.id,

t.fid,

t.has_read,

t.notice_time,

t.read_time

from

(

select

a.id,

a.fid,

a.has_read,

a.notice_time,

a.read_time,

@v_rownum := @v_rownum+1,

if(@v_fid=a.fid,@v_rowid:=@v_rowid+1,@v_rowid:=1 ) as row_count,

@v_fid:=a.fid

from

(

SELECT

id,

fid,

has_read,

notice_time,

read_time

FROM vkm_user_notice_flight

where `notice_type` = 'process_update' and uid=82

order by fid, notice_time desc

) a,

(

select @v_rownum:=0, @v_rowid:=0, @v_fid:=null

) b

) t

where t.row_count =1

) AS `notice`

LEFT JOIN `vkm_flight` AS `f` ON `notice`.`fid` = `f`.`id`

LEFT JOIN `vkm_parking` AS `parking` ON `f`.`actual_parking` = `parking`.`parking_num`

在工作中朋友发来了一段这样的sql语句一开始我就蒙了根本不懂啊!因为个人的mysql也不是很精通只会简单的增删改而已其实,以上代码很直接的写法就是

SELECT `notice`.`id` , `notice`.`fid` , `notice`.`has_read` , `notice`.`notice_time` , `notice`.`read_time` , `f`.`fnum` , `f`.`forg` , `f`.`fdst` , `f`.`actual_parking` AS `parking` , `f`.`scheduled_deptime` , `f`.`estimated_deptime` , `f`.`actual_deptime` , `f`.`scheduled_arrtime` , `f`.`estimated_arrtime` , `f`.`actual_arrtime` , `f`.`is_vip` , `f`.`aoc_notice`

FROM `notice` LEFT JOIN `vkm_flight` AS `f` ON `notice`.`fid` = `f`.`id` LEFT JOIN `vkm_parking` AS `parking` ON `f`.`actual_parking` = `parking`.`parking_num`

但是以上代码的查询效率真的是差别太大了!具体的上面的那串代码我还没明白方式,也请求指导中,但是上网百度了一下一个是mysql中if的使用还有一个就是mysql中用户变量的使用

用户名量的设置可以通过setvarvalue的方式也可以用以上的形式@var:=val;

mysql中if的使用if(exp1,exp2,exp3)在if中如果exp1为true则执行exp2否则执行exp3;

现在再看上述的代码的话可能就简单多了!根据上述的代码我又重新自己写了一个简单的应用实例

select id,fnum,forg,fdst,@v_rownum:=@v_rownum+1 from vkm_flight,(select @v_rownum:=0) b

这样就返回了@v_rownum的值

mysql查询语句中自定义变量(转)

转:/s/blog_1512521570102wrfl.htmlselect cost,@a:=@a+1 from testone,(select @a: ...

MySql查询语句中的变量使用

前言 今日在LeetCode刷MySql的题,遇到一题,题目到没什么,解答完了之后习惯去看此题的题解,有位大佬的思路让博主感觉很惊艳,至此,特地记录学习一下. 题目 解答 乍一看题目也没啥,分数排名, ...

Mysql查询语句中字符型字段不区分大小写解决方法

项目中和前端联调的时候,发现Mysql查询语句中字符型字段值过滤是不区分大小写的,之前没有关注过这个设置,特意去网上看了下,原因是Mysql中“COLLATE”属性区分大小写,而该属性默认值为“utf ...

mysql查询语句中使用星号真的慢的要死?

前言 之所以写这篇文章,是源于以前看过的关于sql语句优化的帖子,里面明确提到了在sql语句中不要使用 * 来做查询,就像下面的规则中说的 2.尽量避免使用select *,返回无用的字段会降低查询效 ...

mysql查询语句中like 的用法

1.常见用法: (1)搭配%使用 %代表一个或多个字符的通配符,譬如查询字段name中以大开头的数据: (2)搭配_使用 _代表仅仅一个字符的通配符,把上面那条查询语句中的%改为_,会发现只能查询出一 ...

MySql查询语句中解决“该列没有包含在聚合函数或者groupby子句中”的相关问题方法

首先引入语句来源,表结构和数据如下: 需求是:查出员工(personname)在不同店铺(store)的总薪酬(salary),相同店铺输出store,不同店铺输出multi_store. 正确查询语 ...

MySQL 查询语句中自己定义的中文内容在Java Web 中显示为问号

Java Web 端做查询时,性别字段存的是数字,1代表男,2代表女,取数据时将性别转为汉字显示在页面,sql语句如下,结果发生了问题 selecta.emp_id,a.emp_name,cas ...

mysql实例---sql语句中使用@变量

本文介绍下,在mysql语句中使用@变量的一个例子,学习下这个特殊变量的用法,有需要的朋友参考下吧. 要求: 计算用户距上次访问的天数,根据imei号区分不同的用户,如果时间段内只有一次访问则为0. ...

mysql常用内置函数-查询语句中不能使用strtotime()函数!

来自:/blog/775407 FROM_UNIXTIME把 unix时间戳转换为标准时间 unix_timestamp把标准时间转换为 unix时间戳 ...

随机推荐

mir9-lua——《热血沙城》45度ARPG手游-Lua移植版

mir9——,是9秒论坛开源的一个使用Cocos2d-x-2.2.1引擎开发的45度ARPG手游Demo,源代码为c++.mir9-lua是mir9的Lua移植版,使用Quic ...

8.3 MPI

MPI 模型 如图MPI的各个运算节点是分布式的.每一个节点可以视为是一个“Thread”,但这里的不同之处在于这些节点没有所谓的共享内存,或者说Global Memory.所以,在后面也会看到,一般 ...

[C#]Base使用小记

base 关键字用于从派生类中访问基类的成员: • 调用基类上已被其他方法重写的方法. • 指定创建派生类实例时应调用的基类构造函数. 基类访问只能在构造函数.实例方法或实例属性访问器中进行. 从静态 ...

POJ 2823 Sliding Window 【单调队列】

题目链接:/problem?id=2823 题目大意:给出一组数,一个固定大小的窗体在这个数组上滑动,要求出每次滑动该窗体内的最大值和最小值. 这就是典型的单调队列,单调队 ...

ABP-N层架构

ABP理论学习之N层架构 返回总目录 自从写这个系列博客之后,发现很多园友还是希望有个直接运行的demo,其实在github上就有官方的demo,我直接把这demo的链接放到这里吧,另外,我分析, ...

Java IO编程全解(六)——4种I/O的对比与选型

转载请注明出处:/Joanna-Yan/p/7804185.html 前面讲到:Java IO编程全解(五)--AIO编程 为了防止由于对一些技术概念和术语 ...

java并发包下的并发工具类

1.Exchanger 功能:用于线程间数据的交换 应用场景:1)遗传算法,目前还不是特别理解 2)校对工作,假设A,B线程做同一件任务,可以通过数据校验判断两线程是否正确的工作 例子:是一个简单的 ...

Codeforces Round #404 (Div. 2)(A.水,暴力,B,排序,贪心)

A. Anton and Polyhedrons time limit per test:2 seconds memory limit per test:256 megabytes input:sta ...

java向上转型和向下转型1

在java继承体系中,认为父类(超类)在上层,子类在下层(派生类) ,向上转型就是把子类对象转成父类对象. public class Father { public void eat(){ Syste ...

第一次怎么把本地git仓库的内容push到远程仓库?

使用git push origin -f 这种方式可以用本地仓库的内容覆盖远程仓库.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。