我之前问过一个问题MYSQL Searching multiple tables with different columns using LIKE
我无法获得帮助:所以我妥协了。现在,如果一个人进行搜索并在多个表中找到它,它不会按照我想要的顺序搜索它们。我希望结果首先来自连接器表,然后是适配器表,然后是组件表。如果在连接器中找到结果,请不要搜索适配器或组件,继续。
我还尝试将它们按此顺序排列,而不使用 else if:组件、适配器、连接器。但这没有用。
if(isset($_GET['num'])) {
$num = $_GET['num'];
$numresult = mysql_query("SELECT * FROM productnumber WHERE part_num LIKE '%$num%'");
if ($numresult) {
while ($row = mysql_fetch_array($numresult)) {
if ($row["title"] == "connectors") {
$numtitle = "connectors";
$result = mysql_query("SELECT * FROM connectors WHERE part_num LIKE '%$num%'");
} else if ($row["title"] == "adapters") {
$numtitle = "adapters";
$result = mysql_query("SELECT * FROM adapters WHERE part_num LIKE '%$num%'");
} else if ($row["title"] == "components") {
$numtitle = "components";
$result = mysql_query("SELECT * FROM components WHERE part_num LIKE '%$num%'");
}
}
}
}