php - SQL INNER JOIN 未正确连接?

标签 php mysql

总的来说,我对 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/

相关文章:

php - 提交表单时从 URL 中删除 %5B%5D

php - 求和值并插入数据库

mysql - 如何在基于行和基于列的表结构之间做出决定?

MySQL 按字母数字顺序对 varchar 进行排序

mysql - MySQL 的 POINT() 函数记录在哪里?

php - 在 Qunit 测试中使用 Zend 局部 View 助手

php - PHP 响应中的 <U+FEFF>

php - mySQL 数据库和 PHP 中的 URL 字符串

mysql - 重新格式化邮政编码以包含空格

php - 嵌套数组/连接可以用 Php::PDO 完成吗?