我有一個名爲news
的表和這兩個代碼片段,我想創建一個搜索引擎,通過keywords
表掃描。在一個表連接並運行得非常好的情況下,向查詢添加額外的表將會更清晰。如何添加多個表到這個查詢
我的任務是創建一個從表中返回行的搜索引擎。搜索引擎是基於關鍵字的,對於特定的術語比如'紐約時報'非常適用,但是如果我想輸入新聞,這就是所有新聞網站都按ID排序的地方。但有時候,與CNN不同的是,有關關鍵詞'news'的完全不同的詞會在表中彈出相當高的字符串,因爲id。用新表格,組織表格會容易得多。這樣,如果輸入的術語是「新聞」,網站將按ID排序,即使它們在其他表格上發生衝突,它們仍然按ID排序。
雖然我的查詢比傳統的查詢不同的一點,我不知道該怎麼
通過
UNION
或添加表與某種形式的
LEFT JOIN
標籤。
我的查詢是下面,我很想有人解釋:1)什麼是錯的只是 B)告訴我,或粘貼下面代碼:
<?php
if(isset($_GET['k'])){
$k = $_GET['k'];
}else{
$k = '';
}
$k = (isset($_GET['k']))? trim($_GET['k']) : '';
$terms = (strlen($k) > 0)? explode(' ', $k) : Array();
/* The code below is from a different part of the script */
$query = " SELECT * FROM scan WHERE ";
$terms = array_map('mysql_real_escape_string', $terms);
$i = 0;
foreach ($terms as $each) {
if ($i++ !== 0){
$query .= " AND ";
}
$query .= "keywords LIKE '%{$each}%'";
}