我一直在撕掉我的头发,因为我无法理解似乎是一个非常简单的问题。我正在制作一个小型的业务联系人系统,使我们公司能够存储其他业务/公司的联系方式以及业务联系人(可以是自由职业者或与之前添加的公司有联系。我想要做的是搜索形式使我能够搜索联系人的名称或在阿拉伯文和英文企业名称我在做什么错误MySQL UNION没有返回任何结果
UPDATE:联合查询工作,如果我删除从每个查询部分阿拉伯搜索部分(即我删除 “OR contact_name_arabic LIKE '%”。$的queryString。 “%'” 以及 “OR company_name_arabic LIKE '%”。$的queryString。 “%'”)
这个 正在变得更加复杂:/
表1:公司
id | company_name | company_name_arabic
-----------------------------------------------
1 | Red Arrow | السهم الأحمر
2 | White Tower | البرج الأبيض
3 | Mobilex | موبيليكس
表2:联系人
id | company_id | contact_name | contact_name_arabic
----------------------------------------------------------------
1 | 1 | Saeed Adam | سعيد آدم
2 | 1 | Andrew White | أندرو وايت
3 | 2 | Steve Rogers | ستيف روجرز
下面是MySQL数据库语句:
$querystring = "(SELECT contact_name, contact_name_arabic
FROM CONTACTS
WHERE contact_name LIKE '%".$queryString."%'
OR contact_name_arabic LIKE '%".$queryString."%')
UNION
(SELECT company_name, company_name_arabic
FROM COMPANIES
WHERE company_name LIKE '%".$queryString."%'
OR company_name_arabic LIKE '%".$queryString."%')";
谢谢!
尝试使用'UNION ALL' – DevZer0
你能否解释一下什么是不为你工作。 –
DevZer0 - 没有帮助:/ 摩尼 - 我试图拔出任何记录匹配联系人的名称或公司的名称只使用一个查询字符串。 问题是,如果我只尝试从一个表中选择(即删除UNION和第二个查询)它工作正常! – Haret