gpt4 book ai didi

php - 为什么这个简单的连接不起作用? (mysql)

转载 作者:行者123 更新时间:2023-11-29 15:05:29 25 4
gpt4 key购买 nike

我有两个表,classifiedfordon

classified table:
classified_id (PK)
etc...

fordon table:
id (PK)
classified_id (FK)

我尝试使用此代码:

SELECT * FROM classified, fordon WHERE classified.ad_id IN ('$solr_id_arr_imploded') AND classified.classified_id=fordon.classified_id

顺便说一句,数组是一组从 solr 返回的 ad_id:s,没关系,这不是这里的问题......

然后我在 while 循环中使用 mysql_fetch_array 来显示所有结果:

while($row = mysql_fetch_array($qry_result)){

但是当我尝试回显表 fordon 内的某些内容时,会出现找不到索引错误。但表中的任何内容classified都可以进行回显!

有什么想法吗?

谢谢

更新

   while($row = mysql_fetch_array($qry_result)){
echo $row['type']; // This doesn't work, because the 'type' column is inside the 'fordon' table
echo $row['headline']; // This does work because it's inside 'classified' table.

最佳答案

这有帮助吗?

SELECT * 
FROM classified c
INNER JOIN fordon f ON c.classified_id=f.classified_id
WHERE classified.ad_id IN ('$solr_id_arr_imploded');

此外,使用:SELECT * 通常不是一个好主意。最好只选择您想要的元素,或者在您从中获取所有元素的表的上下文中使用 *,例如

SELECT classified.* 
FROM classified c
INNER JOIN fordon f ON c.classified_id=f..classified_id
WHERE classified.ad_id IN ('$solr_id_arr_imploded');

当您使用毯子 * 进行联接时,您将获得所有表中的每个字段。

关于php - 为什么这个简单的连接不起作用? (mysql),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2219748/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com