MYSQL如果不喜欢A,那么喜欢B

MYSQL如果不喜欢A,那么喜欢B,mysql,sql,case,sql-like,Mysql,Sql,Case,Sql Like,我想做一个sql查询 但是如何在SQL SELECT语句中执行IF…THEN,如: 从表1、表2中选择名称,其中如果名称像a,那么名称像else名称像b可以使用OR运算符,它连接两个布尔子句: WHERE name LIKE ... OR name LIKE ... 请注意,OR的优先级低于AND,因此如果要将其与其他限制结合使用,则需要使用括号;例如: WHERE ( name LIKE '%a%' OR name LIKE '%b%' ) AND id < 1000 可以

我想做一个sql查询 但是如何在SQL SELECT语句中执行IF…THEN,如: 从表1、表2中选择名称,其中如果名称像a,那么名称像else名称像b

可以使用OR运算符,它连接两个布尔子句:

WHERE name LIKE ...
   OR name LIKE ...
请注意,OR的优先级低于AND,因此如果要将其与其他限制结合使用,则需要使用括号;例如:

WHERE ( name LIKE '%a%' OR name LIKE '%b%' )
  AND id < 1000
可以使用OR运算符,它连接两个布尔子句:

WHERE name LIKE ...
   OR name LIKE ...
请注意,OR的优先级低于AND,因此如果要将其与其他限制结合使用,则需要使用括号;例如:

WHERE ( name LIKE '%a%' OR name LIKE '%b%' )
  AND id < 1000

SQL不是一种编程语言,它没有if、then、else等。如果所需的条件可以用AND和OR等集合操作来表示,那么您可以这样做


否则,您需要编写存储过程、存储函数或存储例程。请参阅,这将允许您编写过程代码。设置操作通常要快得多。

SQL不是一种编程语言,它没有if、then、else等。如果所需的条件可以在设置操作(如AND和OR)中表示,您可以这样做

否则,您需要编写存储过程、存储函数或存储例程。请参阅,这将允许您编写过程代码。set操作通常要快得多。

MySQL支持IF语句和CASE语句。假设a和b是一个表中的列,而name是另一个表中的列,请尝试类似的操作:

 select name 
    from table1,table2
    where name like 
       case 
          when name like a 
          then a
          else b
       end
还有一些提琴样品:

您可能希望在LIKE查询中使用“%”-如果是,请相应地使用CONCAT。如果需要,可以将相同的逻辑用于字符串值

请发布您的表结构、示例数据和所需输出,以便我们能够完全理解您的问题并提供最佳答案。

MySQL支持IF语句和CASE语句。假设a和b是一个表中的列,而name是另一个表中的列,请尝试类似的操作:

 select name 
    from table1,table2
    where name like 
       case 
          when name like a 
          then a
          else b
       end
还有一些提琴样品:

您可能希望在LIKE查询中使用“%”-如果是,请相应地使用CONCAT。如果需要,可以将相同的逻辑用于字符串值


请发布您的表结构、示例数据和所需输出,以便我们能够完全理解您的问题并提供最佳答案。

是否尝试过mysql存储过程

您可能想查看以下内容:


希望这有帮助!:

是否尝试过mysql存储过程

您可能想查看以下内容:


希望这有帮助!:

我不能使用或因为我不能同时选择a和b只有a或bI想进行查询可以检查完全为空例如:选择一个where case当一个like%b%然后一个like%b%else如果在搜索表的每一行后仍然返回null一个like%c%如果在任何行中有匹配跳过else语句你能帮助我不能使用或因为我不能选择吗a和b仅a或bI要进行查询就可以检查完全为空例如:选择一个where case当一个like%b%然后一个like%b%else如果在搜索后表的每一行仍返回null一个like%c%如果在任何行中有匹配跳过else语句是否可以帮助me@KhoaTrumcuoi-np,很高兴我们能帮忙!顺便说一句,如果有任何答案帮助你,考虑标记他们接受,所以网站的未来用户会知道你的问题已经解决。祝你好运!对不起,但我不知道你的意思是如何标记它们,因为我只是个新手sorr@KhoaTrumcuoi:在每个答案的左侧,您应该看到复选框的轮廓。如果您单击它,复选框将被填写,并将该答案标记为已接受答案。瞧。@khatarumcoui-np,很高兴我们能帮忙!顺便说一句,如果有任何答案帮助你,考虑标记他们接受,所以网站的未来用户会知道你的问题已经解决。祝你好运!对不起,但我不知道你的意思是如何标记它们,因为我只是个新手sorr@KhoaTrumcuoi:在每个答案的左侧,您应该看到复选框的轮廓。如果您单击它,复选框将被填写,并将该答案标记为已接受答案。看见