【问题标题】:Fetch data from multiple columns within the same table从同一个表中的多个列中获取数据
【发布时间】:2017-01-25 13:18:27
【问题描述】:

我的网站上有一个搜索功能,可以搜索和显示数据!

我的数据库结构相当简单。我有一个表,其中有多个列,但我想基于两列获取数据,现在我有一个将用户搜索作为参数的查询。我想要做的是在两个特定的列中搜索并返回数据!

这是我的查询:

$key=$_GET['key'];
$key=str_replace("-"," ",$key);
$query="
select rand_id
     , title_short
     , color
     , path
     , category
from data
where title_full LIKE CONCAT('%',?,'%')
";

$stmt = $db->prepare($query);

此查询正在从 title_full 的一列中获取数据,但我想做的是在此处添加另一列名为 size 以便它从两列中搜索。

有什么帮助吗?

【问题讨论】:

  • and 运营商可能是?

标签: php mysql


【解决方案1】:

我自己做的,我只是在最后添加了一个 OR 条件

$key=$_GET['key'];
                $key=str_replace("-"," ",$key);
                $query="select `rand_id`,`title_short`,`color`,`path`,`category` from `data` where `title_full` LIKE CONCAT('%',?,'%') OR `size` LIKE CONCAT('%',?,'%')";
                $stmt = $db->prepare($query);

                if($stmt){
                    $stmt->bind_param("ss",$key,$key);
                    $stmt->bind_result($rand_id,$title, $color, $path, $category);
                    $stmt->execute();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-31
    • 2018-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-22
    相关资源
    最近更新 更多