mysql - 如何在 UNION 查询中的两个表中使用 where 条件?
问题描述
我有两张桌子table1
和table2
. 在这两个表中,列几乎相同。我正在做的是我必须显示两个表中的记录。
就像我在列表页面上,我必须显示记录。另外,我必须使用 where 条件。
我试过下面的查询
$query1='select *,(CASE WHEN is_status =0 THEN "No" ELSE "Yes" END) as status from tbl_lead as l1 UNION select *,(CASE WHEN is_status =0 THEN "No" ELSE "Yes" END) as status from tbl_leadUpload as l2';
现在我必须使用表 1where leadstatus IN(1,2,3)
和表 2 的 where 条件where leadstatus IN(1,2,3,4,7)
来显示同一列表中的记录。
如何对两个表使用 where 条件?
你能帮我解决这个问题吗?
解决方案
您有不同的条件,因此您必须使用WHERE
两次:
select *,(CASE WHEN is_status =0 THEN "No" ELSE "Yes" END) as status
from tbl_lead as l1
where leadstatus IN(1,2,3)
UNION
select *,(CASE WHEN is_status =0 THEN "No" ELSE "Yes" END) as status
from tbl_leadUpload as l2
where leadstatus IN(1,2,3,4,7)
推荐阅读
- flutter - 颤动圆角底部导航栏
- angular - FormCanDeactivate 类的名称应以 Directive 后缀结尾
- asp.net-core - 如何在 .NET Core 3.1 中为 SOAP 请求设置证书?
- angular - 如何访问应用程序后端和管理员 - Laravel 5 后端 + Angular JS 管理员
- android - 将菜单项添加到应用程序外部的弹出菜单
- c# - Xamarin 表单:如何从 CRUD 函数动态(在应用程序中)添加菜单项?
- javascript - 在移动或拖动时检测两个对象在右边缘的碰撞
- android - 如何使用导航组件保持对话框打开?
- sql - 绑定变量到子查询
- sql - STRING_SPLIT 逻辑对我来说失败了