gpt4 book ai didi

MySQL 在第一个查询中使用给定匹配参数中的 2 个中的 1 个来查询整个表

转载 作者:行者123 更新时间:2023-11-30 22:51:05 27 4
gpt4 key购买 nike

我在表格中有如下三列:

+----------+---------+-----+
| forename | surname | ref |
+----------+---------+-----+
| John | Smith | 123 |
| Brenda | Smith | 123 |
| Paul | Johnson | 123 |
| Greg | Smith | 222 |
| Suzanne | Smith | 222 |
| Allan | Taylor | 168 |
+----------+---------+-----+

网站的用户将输入他们的信息以查询该表是否存在。

目前对此的查询是...

"SELECT * FROM invites WHERE surname='$surname' AND ref='$ref'";

...其中 $surname 和 $ref 是我正在设计的网页中提交的表单值。

但是,我希望此页面上的结果列表不仅显示与两个字段完全匹配的记录,而且还显示表中与 Web 表单中提供的 ref 匹配的任何名字和姓氏,前提是姓氏同时提交time 作为表单中的 ref 是完全匹配的。为此编写查询的最有效方法是什么?

最佳答案

如果我理解正确,您希望查询返回以下结果,给定姓氏“Smith”和引用号“123”

| forename | surname | ref |
----------------------------
| John | Smith | 123 |
| Brenda | Smith | 123 |
| Paul | Johnson | 123 |
----------------------------

如果是这样,查询将是这样的:

select * from invites where surname = '$surname' and ref = '$ref'
union
select * from invites where ref = '$ref' and exists (select surname
from invites where surname = '$surname')

关于MySQL 在第一个查询中使用给定匹配参数中的 2 个中的 1 个来查询整个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28143401/

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