您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

thinkphp四级关联查询怎么写 ,在线等

2024/3/24 8:59:06发布24次查看
thinkphp四级关联查询怎么写?关系:a在b的aid,b在c的bid,c在d的cid,怎样关联起来呢?
a-->b-->c-->d
m(d)->jion(a on b.aid=a.id)->jion(b on c.bid=b.id)->jion(c on d.cid=c.id) 这样写不对
回复讨论(解决方案) 你的表达式写错了
->join('a on b.aid=a.id')->join(b on c.bid=b.id)->join(c on d.cid=c.id)
join() 里面直接写join吧
应该是join
你jion 直接改成join句子就对了 ,没问题!
你的表达式写错了
->join('a on b.aid=a.id')->join(b on c.bid=b.id)->join(c on d.cid=c.id)
这样写不行,如果是->join('a on b.aid=a.id')->join(c on b.bid=c.id)->join(d on b.cid=d.id) 这样可以。
你jion 直接改成join句子就对了 ,没问题!
left、right、inner,不写都不对 你看看最后产生的 sql 指令
是形如这样的,就符合你的要求了 select * from a left join b on a.id=b.aid left join c on b.id=c.bid left join d on d.id=d.cid

你看看最后产生的 sql 指令
是形如这样的,就符合你的要求了 select * from a left join b on a.id=b.aid left join c on b.id=c.bid left join d on d.id=d.cid

产生的sql是这种,但是它报错了,[err] 1054 - unknown column  1054 - unknown column 未知的列
显然是有字段名写错了,请仔细检查一下
1054 - unknown column 未知的列
显然是有字段名写错了,请仔细检查一下
我也知道报这个错是名字写错了,但是我核对了好几遍,确定名字没错 你把产生的 sql 指令放到 mysql 管理器或 phpmyadmin 中执行一下
看看原始的错误信息是什么
你把产生的 sql 指令放到 mysql 管理器或 phpmyadmin 中执行一下
看看原始的错误信息是什么
找到问题了,原来是这几个的顺序错了,把d防止最前面,然后是c,再次的b,再次是a
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product