当前位置: 首页 > 面试题库 >

使用“ ND”运算符的多种条件,并使用MySQL从单个表返回精确匹配的行

东郭弘方
2023-03-14
问题内容

select
games_exchange.u_exchange_id
from
games_exchange
where
( games_exchange.game_id = 7
AND games_exchange.exchange_type = 1 )
AND (
games_exchange.game_id = 7
AND games_exchange.exchange_type = 2 )
group by
games_exchange.u_exchange_id
HAVING
COUNT( games_exchange.u_exchange_id ) = 2

我从上述查询中获得的预期结果是u_exchange_id =171。但是上述查询返回了u_exchange_id = 171&170。


问题答案:

经过大量研究,我想出了解决我问题的方法。实际上,我在使用带有条件子句的错误方式使用where条件。 下面的代码给出了针对我的问题的建议解决方案

SELECT u_exchange_id FROM games_exchange 
WHERE 
u_exchange_id IN 
( SELECT u_exchange_id FROM games_exchange WHERE game_id = 7 AND 
exchange_type = 1 )
AND 
u_exchange_id IN 
( SELECT u_exchange_id FROM games_exchange WHERE game_id = 7 AND 
exchange_type = 2)
GROUP BY u_exchange_id 
HAVING COUNT( u_exchange_id ) = 2

注意:我是通过在两个部分的游戏ID上使用foreach()来实现的,并为每个ID动态添加了子查询。



 类似资料:
  • 我试图检查字符串是否包含完全匹配。例如: String str="这是我的字符串,具有-Policy和-p" 我怎样才能做到以下几点:

  • 原始关闭原因未解决 你好朋友我有网站url="https://www.example/en_uk/cgid=ladywears 提前谢谢

  • 我已经尝试了所有的方法,最终我要求助于这个社区来解决这个谷歌表单公式。以下是一份示例表,以说明这种情况:https://docs.google.com/spreadsheets/d/1mLzsAyqtkASYMQsu8-igaUTURvhHiH-jXJN3qsr0mkU/edit?usp=sharing 每一行都是一个就诊的病人。有5个字段供患者提供电话号码(手机、家庭等)。)。在另一个标签(付费

  • 我有以下代码; 我遇到的问题是条件渲染线; 就好像它只识别OR运算符之间的一个条件,即放在第一位的条件。有没有可能在React with条件呈现中OR()运算符不可用? 如果是的话,我该如何实现以下的目标呢?例如基于2或条件的呈现。

  • 问题内容: 我正在使用MySQL包含以下各列的表: 表中的数据如下所示: 要查询它,我可以轻松地做到这一点: 结果将是: 我想知道是否有办法做到这一点: 我想在表达式中使用表列,而无需实际手动指定名称(将其键入)。 奖励(+1)问题 : 能否使用Match / Against像这样完成: 谢谢你的时间!:) 问题答案: 您必须使用Prepared Statement,因为您要执行的操作只能通过动态

  • 我使用elasticsearch查询带有模糊匹配的索引。我使用的是一个最小克长度为3的边缘ngram标记器。 但是,对于仅包含1或2个字符的查询,这不会返回任何结果。是否可以仅对这1个或2个字符进行精确匹配,但对具有3个或更多字符的查询使用边缘非负RAM? 这是我当前的elasticsearch索引映射: 要查询此索引,请求如下: 产生了大量的结果,但是像这样的请求 给出一个空集。理想情况下,如果