一般来说,我对SQL和PHP还是很陌生。我正在为我的网站(一个学校项目)制作一个小的搜索栏,并且已经设置了三个表,第四个表已设置。我使用以下SQL代码(仅查看我要加入的第一个表):

SELECT  `band`.`bands`, `diskografi`.`FKband`
FROM `band`
INNER JOIN `diskografi`
ON `band`.`id` = `diskografi`.`FKband`


这给了我这个表:

http://puu.sh/7VnOJ.png

在我看来,它未正确连接,但我想这可能是我不了解SQL。
现在,我只能搜索我的乐队表(如下所示)。

$query = mysql_query("SELECT * FROM band WHERE bands LIKE '%$searchq%'")


我希望能够搜索此表,并且仍然获得乐队名称。

最佳答案

进行联接时,可以从FROM子句中保留联接表。尝试这个:

$query = mysql_query("SELECT * FROM band
                     INNER JOIN diskografi ON band.id = diskografi.FKband
                     WHERE bands
                     LIKE '%$searchq%'");


我希望这仅用于测试目的。因为使用mysql_query是不安全的,已被弃用。最好将PDOmysqli与已准备好的语句一起使用。

关于php - SQL INNER JOIN无法正确加入?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22855204/

10-09 00:40