php mysql在同一个表中获取具有父ID的记录
发布时间:2020-12-13 22:25:51 所属栏目:PHP教程 来源:网络整理
导读:我想要获取包含照片或视频的相册类型.我不需要空白专辑.表结构如下 id catID parentID catName type1 1 0 location album2 2 0 color album3 3 1 USA album4 4 0 Illinois1 album 5 4 3 Illinois photo6 5 3 Chicago video7 6 2 Black photo8 7 2 Red photo
我想要获取包含照片或视频的相册类型.我不需要空白专辑.表结构如下
id catID parentID catName type 1 1 0 location album 2 2 0 color album 3 3 1 USA album 4 4 0 Illinois1 album 5 4 3 Illinois photo 6 5 3 Chicago video 7 6 2 Black photo 8 7 2 Red photo 在这里,我想获取具有子记录的行.即在这里,Id 1,2和3被设置为3,5,6,7,8记录的parentid. ID 4没有子记录.所以我想获取记录Id 1,2,3 我使用了以下查询. select rm.* from media rm,media as tmp inner join tmp on rm.id = tmp.parentID and (tmp.media_type = 'photo' OR tmp.media_type = 'video'); 但它不起作用.因此,我想要获取包含照片或视频的相册类型.我不需要空白专辑. 请帮我 解决方法
您似乎以某种方式混淆了隐式和显式连接语法.
清理原始查询: – SELECT DISTINCT rm.id,rm.catID,rm.parentID,rm.catName,rm.type FROM media rm INNER JOIN media tmp ON rm.id = tmp.parentID AND tmp.media_type IN ('photo','video') 即使它们有多个子记录,也要求distinct只返回一次父级. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |