gpt4 book ai didi

php - 如何使用 join 进行 where 查询

转载 作者:行者123 更新时间:2023-11-29 19:34:22 25 4
gpt4 key购买 nike

我有一个表格,其中有四列

  1. ID
  2. 用户类型
  3. 用户角色
  4. org_id

现在,如果user_type为1(即个人),则user_roleorg_id将为空,但如果user_type是2(即组织),那么它将有org_id(组织的ID)和user_role(他在组织中的角色) )。

组织中存在三种类型的角色

  1. 管理员(只有一个人可以担任管理员)。
  2. 财务保密(可能不止一项)。
  3. 批准人(也可以不止一个)。

我想要什么如果每个组织的 user_type 为 2 并且所有用户的 user_type 为 1,我只想获取一个人(可能是组织的管理员)。

我的 table

-------------------------------------
| tbl_user |
-------------------------------------
| id | user_Type | user_role | org_id|
--------------------------------------
| 1 | 1 | null | null |
| 2 | 2 | 1 | 1 |
| 3 | 2 | 2 | 1 |
| 4 | 2 | 3 | 1 |
| 5 | 2 | 3 | 1 |
| 6 | 1 | null | null |
| 7 | 2 | 1 | 2 |
| 8 | 2 | 2 | 2 |
| 9 | 2 | 3 | 2 |
| 10 | 2 | 3 | 2 |

通过使用查询

SELECT * FROM YourTable t
WHERE t.user_type = 1
OR t.user_role = 1

预期结果

-------------------------------------
| tbl_user |
-------------------------------------
| id | user_Type | user_role | org_id|
--------------------------------------
| 1 | 1 | null | null |
| 2 | 2 | 1 | 1 |
| 7 | 2 | 1 | 2 |
| 6 | 1 | null | null |

然后我必须将结果与 tbl_user_meta 结合起来(其中邮政编码 = 85225)。

我的 tbl_user_meta 如下 -

 -------------------------------------
| tbl_user_meta |
--------------------------------------
| id | uid | user_name | zipcode|
--------------------------------------
| 1 | 1 | abc | 85225 |
| 2 | 2 | asd | 85225 |
| 3 | 3 | asd | 85225 |
| 4 | 4 | sdf | 345678 |
| 5 | 5 | fgd | 23456 |
| 6 | 6 | rgy | 23567 |
| 7 | 7 | hyt | 12345 |
| 8 | 8 | ukl | 12345 |
| 9 | 9 | tko | 21334 |
| 10 | 10 | ert | 85225 |

我最终想要达到的就是这个记录

-------------------------------------
| tbl_user_meta |
--------------------------------------
| id | uid | user_name | zipcode|
--------------------------------------
| 1 | 1 | abc | 85225 |

P.S - 我正在使用 codeigniter 执行此操作

谢谢。

最佳答案

您可以按照下面的方式加入表格,请记住从“85225”中删除“”(如果它是整数)。

select * from tbl_user, tbl_user_meta where tbl_user.id = tbl_user_meta.id AND tbl_user_meta.zipcode = "85225";

关于php - 如何使用 join 进行 where 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41613861/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com