为了账号安全,请及时绑定邮箱和手机立即绑定

ThinkPHP5 MySQL 能把第二张表的数据赋值给第一张表的某个字段吗?

ThinkPHP5 MySQL 能把第二张表的数据赋值给第一张表的某个字段吗?

一只斗牛犬 2018-08-29 09:09:19
图1是表1,图2是表2.表1中的 advantage 对应表2的 type ,以及图2的 with_id 对应表1的主键ID,也就是说,最终获取出来的数据是这种格式:array(  "id"     =>   1,  "title"    =>   "string",  "content"   =>  "string",  "advantage"   =>  array(6),  "features"   =>  array(4),  "process"   =>  array(7));用join写获取出来的数据就搞不懂该怎么去遍历了。$res = ServiceList::alias("s")    -> field("s.*")    -> join("service_in_arr si", "s.id = si.with_id")    -> field("si.title as title1, si.content as content1")    -> select();这种写出来的数据即图3,表1仅1条数据,表2的数据仅是表1某字段的一个数据集。若我需要按照第一种格式去获取数据,这种该怎么写?请大神莅临指导,非常感谢!表1获取的格式<code>array(  "id"     =>   1,"title"    =>   "string","content"   =>  "string","advantage"   =>  "advantage","features"   =>  "features","process"   =>  "process");</code>表2获取的格式<code>array(  "id"     =>   1,"with_id"  => "string","type" => "string","title"    =>   "string",);</code>需要的格式<code>array(  "id"     =>   1,"title"    =>   "string","content"   =>  "string","advantage"   =>  array(6),"features"   =>  array(4),"process"   =>  array(7));</code>
查看完整描述

2 回答

?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

如果你实在搞不懂的话,可以先不考虑联接查询,分两次查询,在遍历第一个查询列表中实现数据绑定,先达到目的再进行代码优化为上上选


查看完整回答
反对 回复 2018-09-30
  • 2 回答
  • 0 关注
  • 1739 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信