PHP和SQL-搜索联接表并获得单个结果

PHP和SQL-搜索联接表并获得单个结果,php,mysql,sql,search,phpmyadmin,Php,Mysql,Sql,Search,Phpmyadmin,我使用的SQL代码: SELECT band.bands, udgivelser.udgivelser, numre.numre FROM diskografi AS diskografi INNER JOIN band AS band ON diskografi.FKband = band.id INNER JOIN udgivelser AS udgivelser ON diskografi.FKudgivelser = udgivelser.id INNER JOIN numre A

我使用的SQL代码:

SELECT band.bands, udgivelser.udgivelser, numre.numre 
FROM diskografi
AS diskografi
INNER JOIN band 
AS band 
ON diskografi.FKband = band.id
INNER JOIN udgivelser
AS udgivelser
ON diskografi.FKudgivelser = udgivelser.id
INNER JOIN numre
AS numre
ON diskografi.FKnumre = numre.id
给我下表:

bands    | udgivelser  | numre
---------+-------------+---------
Muse     | Showbiz     | Sunburn
Muse     | Showbiz     | Muscle Museum
etc.
我为搜索函数使用了以下PHP代码:

if(isset($_POST['search'])) {
$searchq = $_POST['search'];
$searchq = preg_replace("#[^0-9a-z]#i","",$searchq);

$query = mysql_query("SQL FROM ABOVE INSERTED HERE 
                          WHERE band.bands 
                      LIKE '%$searchq%'") 
              or die("fejl i søgning!");

$count = mysql_num_rows($query);
if($count == 0){
    $output == 'Der var ingen søgeresultater!';
}else{
    while($row = mysql_fetch_array($query)){
        $fband = $row['bands'];
        $id = $row['ID'];

        $output .= '<div> '.$fband.' </div>';

好吧,不是一个修复,而是一个解释;看起来你的问题可能是你在
@JoachimIsaksson的
群组之后添加了一个
WHERE
,这至少让我能够搜索。非常感谢。如果您想要搜索
udgivelser
numre
,您只需要使用类似
或udgivelser的内容扩展where子句。像“%$searchq%”
。我不知道你的数据库有多大——这可能有点离题,但试着获取更多关于SolR和Lucine Search的信息:)@Jurik这是一个学校项目,所以我尽可能从零开始。
语句起作用了,所以谢谢。好吧,than SolR和Lucine Search会有点过于工程化;)
SQL FROM ABOVE INSERTED HERE 
WHERE band.bands
LIKE '%$searchq%'
GROUP BY band.bands