我有一个问题找不到答案。
我希望用户输入单词,每次按enter键时,我都会将单词发送到服务器以搜索
我需要我的sql在3个表中搜索:
Products
表:
PRODUCT NAME, PRODUCT DESCRIPTION, PRODUCT TAGS
User
表:
USERNAME, USER EMAIL
user-info
表:
ADDRESS, LANGUAGE
假设
$d = array('0'=>'cell phone','1'=>'lightweight','2'=>'brasil','3'=>'nokia');
我需要所有的SQL将搜索所有
这是我最接近的一次,我只看了一张桌子和一个冰箱,我不知道该怎么办。
public function getAllByTags($d){
$sql = 'SELECT * FROM '.TBL_WORKS.' WHERE tags ';
for($i = 0; $i < sizeof($d);$i++){
$sql .= 'LIKE ''%'.$d[$i].'%''';
if(sizeof($d) != 1 && $i != sizeof($d)-1 && $i != sizeof($d)){
$sql .= ' OR ';
}
}
$query = $this->db->query($sql);
foreach($query->result_array() as $row){
$q[] = $row;
}
return $q;
}
我确信谷歌上有答案,但我的英语不是很好(我认为:/),
感谢您的帮助
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE %yourstring
您可以在多个列上执行上面的搜索如果您想在多个表上执行此操作,可以运行3个子查询并使用并集。请参阅此处