我是SQL,PDO和PHP的新手,所以我知道很多人在问自己。还是没什么冒险的……我想结合两个查询的结果,并使用别名使UNION查询的列名相同。我尝试了各种减少操作,直到没有减少的余地为止,我的应用程序需要的实际结果还有很多。我有以下代码,无法考虑为什么它不起作用。
这两个查询都是独立工作的,但是当我将它们与UNION结合使用时,我什么也没得到。任何建议将是最有帮助的。
include ("conn/dbCon_1.php"); $sql= "(SELECT First_Name AS myResult FROM tbl_User WHERE First_Name LIKE ?)"; $sql.=" UNION ALL "; $sql.= "(SELECT Course_Title AS myResult FROM tbl_Course WHERE Course_Title LIKE ? )"; $c1 = "%le%"; try { $qResults = $dbConn->prepare($sql); $qResults->execute([$c1]); $qResults->fetch(PDO::FETCH_ASSOC); return $qResults; //Close connection $dbConn = null; } catch(PDOExcepetion $e) { echo $e->getMessage(); }
非常感谢您的期待,也感谢您的关注。
布里
即使两个参数具有相同的值,您也要使用两个参数来调用查询(如第一个查询中的查询,第二个查询中的查询),因此您必须传递两个参数
$qResults->execute([$c1, $c1]);