首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP搜索多个表

PHP搜索多个表
EN

Stack Overflow用户
提问于 2015-04-18 12:15:52
回答 2查看 73关注 0票数 0

表: tblBuilding

buildingid.建筑物名称.建筑选址

1.................Clinic...............................艾丽斯道

2..冬季购物中心.达曼萨拉

3..教员.北京路

4..星光商场.巴甫里安

表: tblperson

personid.......personname..................personbuilding .

....................Dr安德鲁·克拉克森.0312883232.门诊部

2 ....................Mr Antoine.0825112315.冬季购物中心

....................Mrs Emmy Dahliana.0112357125.教职员工

4.贾斯汀·安德鲁教授.0524128866.教职员工

5.Sanila博士.0225113070.门诊部

如果我输入关键字为Andrew,我的预期结果是

id:1

个人名称:安德鲁·克拉克森博士

人物: 0312883232

人格化:诊所

楼宇位置:艾丽斯道

如果我输入关键字为Star Mall,我的预期结果是

建筑:4

建筑名称:星光商场

建筑位置:陈列馆

我的代码:

代码语言:javascript
复制
if (isset($_GET["FirstName"])) 
{
    $FirstName = $_GET['FirstName'];
}

$query= "(SELECT * FROM tblBuilding where buildingname like '%".$FirstName."%' OR buildinglocation '%".$FirstName."%') UNION (SELECT * FROM tblperson where personname like '%".$FirstName."%' OR personno '%".$FirstName."%' or personbuilding (SELECT * FROM tblBuilding where buildingname like '%".$FirstName."%' OR buildinglocation '%".$FirstName."%')) "

mysql_query($query);

此查询返回空结果。错误如下所示。

代码语言:javascript
复制
   Warning: mysql_num_rows() expects parameter 1 to be resource,
   boolean given in C:\xampp\htdocs\dbinfo\getDetails.php on line 68 {"success":0,"message":"Keyword(s) not found"}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-18 12:24:06

UNION运算符使用相同的列名。您应该使用相同的名称来别名两个表的列名。应该管用的。

票数 1
EN

Stack Overflow用户

发布于 2015-04-18 16:30:54

我想现在它已经修好了。注意,UNION中的每个SELECT语句必须有相同的列数。这些列还必须具有类似的数据类型。此外,每个SELECT语句中的列必须按照相同的顺序排列。

代码语言:javascript
复制
if (isset($_GET["FirstName"])) 
{
$FirstName = $_GET['FirstName'];
}

$query= "(SELECT * FROM tblBuilding where buildingname like '%".$FirstName."%' OR buildinglocation LIKE '%".$FirstName."%' ) UNION (SELECT * FROM tblperson where personname LIKE '%". $FirstName ."%' OR personno '%".$FirstName."%' or personbuilding (SELECT * FROM tblBuilding where buildingname LIKE '%".$FirstName."%' OR buildinglocation '%".$FirstName."%')) ";

 mysql_query($query);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29717213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档