Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >mysql视图,ThinkPHP视图

mysql视图,ThinkPHP视图

作者头像
简单、
发布于 2018-07-18 07:10:51
发布于 2018-07-18 07:10:51
4.8K0
举报

MySQL的视图语句,就拿一个实例讲。我想把 role表和privilege表拼接。下面是我两张数据表的视图。

代码语言:javascript
AI代码解释
复制
SELECT a.* ,GROUP_CONCAT(b.pri_name) FROM 前缀(没有就不加)_role a LEFT JOIN 前缀(没有就不加)_privilege b ON FIND_IN_SET(b.id,a.par_id_list) GROUP BY a.id;
代码语言:javascript
AI代码解释
复制
SELECT a.* b.pri_name FROM role a LEFT JOIN privilege b ON FIND_IN_SET(b.id,a.par_id_list) GROUP BY a.id;
//将a表所有字段列出,b表的pri_name字段,给他们分组到a.id下面。
代码语言:javascript
AI代码解释
复制
SELECT a.* GROUP_CONCAT(b.pri_name) FROM role a LEFT JOIN privilege b ON FIND_IN_SET(b.id,a.par_id_list) GROUP BY a.id;
//将b.表pri_name字段全部显示出来。
代码语言:javascript
AI代码解释
复制
ThinkPHP 的视图方法。上图是有问题的join-> 是错的,正确的应该是 join()->,写的时候粗心了。

正确的语句:

代码语言:javascript
AI代码解释
复制
 $list = $role->field('a.*,GROUP_CONCAT(b.pri_name) pri_name')->alias('a')->join('LEFT JOIN car_privilege b ON FIND_IN_SET(b.id,a.par_id_list)')->limit($Page->firstRow.','.$Page->listRows)->group('a.id')->select();

Tags: None

Archives QR Code

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
MYSQL 子查询聚合
一、背景 在上篇文章《mysql 面试题:多值字符串如何联表查询?》分享了如何对字符串做子查询。
程序猿川子
2025/08/06
2190
MYSQL 子查询聚合
THINKPHP 中关联查询(多表查询)
THINKPHP 中关联查询(多表查询)可以使用 table() 方法或和join方法,请看示例:
PM吃瓜
2019/08/12
5.3K0
数据科学|Hive SQL语法总结
Hive是一个数据仓库基础的应用工具,在Hadoop中用来处理结构化数据,它架构在Hadoop之上,通过SQL来对数据进行操作,了解SQL的人,学起来毫不费力。
陆勤_数据人网
2019/12/31
2K0
2021年大数据Hive(十一):Hive调优
大多数的Hadoop Job是需要Hadoop提供的完整的可扩展性来处理大数据集的。不过,有时Hive的输入数据量是非常小的。在这种情况下,为查询触发执行任务时消耗可能会比实际job的执行时间要多的多。对于大多数这种情况,Hive可以通过本地模式在单台机器上处理所有的任务。对于小数据集,执行时间可以明显被缩短。
Lansonli
2021/10/11
8630
ThinkPHP page分页类的学习
实例化数据对象 1.$user=M('user'); 查询总记录数 $count = $user->count();//直接读取数据表中条项总数 //或者有查询条件 $count = $user->where(查询条件)->count();//查询满足查询条件的条目数 实例化分页类 1.$Page = new \Think\Page($count, 10); 按照限定的条数,从数据库中读取相应数量的条数 如下,filed()指定从数据库中取出id,title,tit
benny
2018/03/06
1.7K0
ThinkPHP page分页类的学习
挨踢小子MySQL笔记体现SQL功底12道
1、复制数据库表数据操作 1、如果是整个表复制表达如下: insert into table1 select * from table2 2、如果是有选择性的复制数据表达如下: insert into table1(column1,column2,column3...) select column1,column2,colunm3...from table2 3、一个数据库中的表中的数据复制到另一个数据库中的一个表,使用方法如下: insert into 数据库A.dbo.table1(col
挨踢小子部落阁
2023/03/16
2480
挨踢小子MySQL笔记体现SQL功底12道
Mysql 手工注入速查表 | 建议收藏
绕 WAF 过滤空格: +,%2B,%20,%09,%0d,%0A,/**/,/*tuns*/ 使用 like、IN、NOT IN 替换 =: script.php?par=1 and subs
信安之路
2021/09/17
1.8K0
tp框架使用join没法使用field,where问题
当tp框架用join连接时,在join本身可以使用下划线+大写数据表名来获取加上数据表前缀的全名,但是之后的field操作,where操作是,没法使用该方法来获取别名的,对此 可以先设置别名来实现 $list = $open_time_model     ->alias('a')     ->join('__TYPE__ as b ON a.id=b.id')     ->field('a.*,b.fullname')     ->where($where)     ->limit($page->firs
仙士可
2019/12/18
9830
Hive开发问题汇总
select id,concat_ws('|', collect_set(name)) from tmp_test group by id;
大王叫我来巡山、
2025/07/11
2090
mysql 层级结构查询
描述:最近遇到了一个问题,在mysql中如何完成节点下的所有节点或节点上的所有父节点的查询? 在Oracle中我们知道有一个Hierarchical Queries可以通过CONNECT BY来查询,但是,在MySQL中还没有对应的函数!!! 下面给出一个function来完成的方法 下面是sql脚本,想要运行的直接赋值粘贴进数据库即可。
用户1217611
2019/05/25
3.4K0
SQL,何必在忆之一(基础篇)
还记得那是在2018年的十月的某个日子,虽早已入秋,但夏日的炎热却丝毫不减退散。那时的我正捧着一本SQL Server程序设计的白蓝皮书与九栋315的狗子们,匆匆的走向j1-402进行了我们人生中第一次SQL数据库的学习,时光总是戏人,现实总是玩笑。当初的几个伙伴都走向了各行各业,而唯有我编程课,问啥啥不会,写啥啥就废的我进入了IT行业。说来实在嘲讽,缅怀那些我错过的编程课,致那些年说过无数次“让我学SQL,根本不可能”,我承认我打脸了。正如此章的title一般,“SQL语句, 何必在忆?”
PayneWu
2021/01/25
9110
mysql的递归查询
对于树结构的查询,在oracle数据库中有现成的函数直接调用,但是在mysql中这部分没有现成的函数可以直接调用,对于树形结构的递归遍历在实际业务中也是非常常见的。本小节做一个记录
在水一方
2022/06/14
3K0
mysql的递归查询
同事问我MySQL怎么递归查询,我懵逼了...
最近在做的业务场景涉及到了数据库的递归查询。我们公司用的 Oracle ,众所周知,Oracle 自带有递归查询的功能,所以实现起来特别简单。
烟雨星空
2020/08/04
3.5K0
MySQL获取每个分类下面的前三条数据
现在项目遇到个问题,我相册图片里面有很多分类,我想取出每个分类下面的前三条数据,应该怎么做呢? 数据结构如下:
用户7657330
2020/08/14
2.8K0
MySQL·Mybatis
使用 constructor 元素将结果注入构造方法里,先给 User 添加构造方法:
数媒派
2022/12/01
1.5K0
挑战进阶级SQL,你能理解几个
1、复制数据库表数据操作 //微信公众号:关注挨踢小子 1、如果是整个表复制表达如下: insert into table1 select * from table2 2、如果是有选择性的复制数据表达如下: insert into table1(column1,column2,column3...) select column1,column2,colunm3...from table2 3、一个数据库中的表中的数据复制到另一个数据库中的一个表,使用方法如下: insert into 数据
挨踢小子部落阁
2019/08/20
6000
集成TP分页类代码
集成tp分页类代码。小伙伴再也不用重复引用了 <?php class PageExtendsAction extends Action{ /** @$s
CrazyCodes
2018/09/18
1.1K0
面试官:MySQL如何实现查询数据并根据条件更新到另一张表?
作者个人研发的在高并发场景下,提供的简单、稳定、可扩展的延迟消息队列框架,具有精准的定时任务和延迟队列处理功能。自开源半年多以来,已成功为十几家中小型企业提供了精准定时调度方案,经受住了生产环境的考验。为使更多童鞋受益,现给出开源框架地址:
冰河
2020/11/25
2.2K0
利用thinkphp实现分页
通常在数据查询后都会对数据集进行分页操作,ThinkPHP也提供了分页类来对数据分页提供支持。分页类目录:/Thinkphp/Library/Org/Bjy/Page.class.php
PM吃瓜
2019/08/12
9240
利用thinkphp实现分页
MySQL-巧用Join来优化SQL
墨墨导读:本文是读者『小豹子加油』的投稿,通过举出唐僧师徒取经的例子,详述一则使用JOIN来优化SQL的案例。
数据和云
2019/08/22
7310
相关推荐
MYSQL 子查询聚合
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
首页
学习
活动
专区
圈层
工具
MCP广场
首页
学习
活动
专区
圈层
工具
MCP广场