繁体   English   中英

mysql子查询取决于字段值

[英]mysql subquery depending on field value

我想根据某个字段值使用不同的条件。 例如,如果field1 ='abc'的值,则field2应该为'123',否则field3应该为'456'。 我的查询要复杂得多,但问题是我是否可以根据字段值使用不同的条件。 像这样:

SELECT * FROM table 
WHERE 
  CASE table.field1='abc'
  THEN table.field2='123'
  ELSE table.field3='456'

我有解决我的问题的方法,但是它涉及3个子查询,这需要花费很多时间才能做出响应。

例如,如果field1 ='abc'的值,那么field2应该是'123',否则field3应该是'456'

您在这里实际上不需要CASE语句。 而是使用条件不同的组合。

WHERE (field1 = 'abc' and field2 = '123')
OR (field1 != 'abc' and field3 = '456')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM