dongzhuang5741 2015-02-16 23:32
浏览 76

从多个表和多个喜欢中选择查询

I'm trying to query several tables with just one query string with no luck. I've read maybe 50 posts in here with no avail. Here's what I have so far:

$sql = "SELECT *
    FROM table1
    WHERE (id LIKE :searchterm
    OR fname LIKE :searchterm
    OR lname LIKE :searchterm)
    UNION ALL
    SELECT *
    FROM table2
    WHERE (id LIKE :searchterm
    OR lang1 LIKE :searchterm
    OR lang2 LIKE :searchterm)
    ";
try
{
    $core = Core::getInstance();
    $stmt = $core->dbh->prepare($sql);
    $stmt->bindParam(':searchterm', $this->_searchTerm);
    if ($stmt->execute()) {
    $stmt->setFetchMode(PDO::FETCH_ASSOC);
        while ($result = $stmt->fetch()) {
            print_r($result);
        }
    } else {
        echo "Couldn't get result.";
    }
} catch(PDOException $e) {
echo "Connection failed: " . $e->getMessage();
}

If I remove from the UNION ALL and leave just the first SELECT, it works. Any ideas?

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 微信会员卡等级和折扣规则
    • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
    • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
    • ¥15 gdf格式的脑电数据如何处理matlab
    • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
    • ¥100 监控抖音用户作品更新可以微信公众号提醒
    • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
    • ¥70 2048小游戏毕设项目
    • ¥20 mysql架构,按照姓名分表
    • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分