我有以下查询:
$img_sub_qry = "SELECT * FROM images
JOIN imagsub ON images.image_id = imagsub.image_id
WHERE images.image_id IN ($thelist)";
问题是这个查询正在填充一个下拉框,我得到了双重结果。我只想要 images 表中的结果,但我需要 JOIN 才能获取仅存在于 imagsub 表中的列。从 FirePHP 我可以看到图像表的结果很好,但随后它循环回来并从 imagsub 中提取相同的结果,我不需要这些结果。我试过“SELECT DISTINCT”无济于事。有人可以帮我吗。我是 PHP 的新手,这是我第一次尝试使用 IN。
最佳答案
我认为您在 select distinct 方面走在了正确的轨道上;只需指定您想要的列。如果您要填充下拉列表,请执行以下操作:
$img_sub_qry = "SELECT DISTINCT [colname] as ddlvalue, [colname] as ddltext
FROM images
JOIN imagsub ON images.image_id = imagsub.image_id
WHERE images.image_id IN ($thelist)";
对于您正在尝试的查询,查询中的每一行都将是不同的,这可能是因为 ID 列。
关于php - 如何忽略 MySQL 查询中 JOIN 表的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9967870/