MYSQL IF 字段包含 THIS 使其他字段 THAT

标签 mysql if-statement concatenation case

我的表 1 中有一个名为 ITEM 的字段。如果 ITEM 包含 %USED-% (USED-) 那么我想制作它的 TIER1 Used Restaurant Equipment 所以它会相应地分组。

这是我当前的声明,我如何使用 IFCASE 实现上述目标?

select 
    CT.TIER1, CT.TIER2
from
    trx.table1 MT
        LEFT JOIN
    trx.table2 CT1 ON MT.ITEM = CT1.ITEM
        LEFT JOIN
    trx.table3 CT ON CT1.WEB_NUM = CT.WEBNUMBER
GROUP BY CT.TIER1
LIMIT 0 , 15

当前输出:

TIER1                   TIER2
NULL                    NULL
Business Type           Ice Cream Equipment
Chinese Food Equipment  Ricers
Concession Equipment    Concession Accessories
Cooking Equipment       Fryers
Food Preparation        Food Preparation Supplies
Food Storage            Storage Racks
Food Warming Equipment  Hot Food Wells

我希望仍然有一些 NULL Tier1 和 Tier2,但我希望它也将 TIER1 显示为“二手餐厅设备”,类似于此:

TIER1                      TIER2
NULL                       NULL
Used Restaurant Equipment  NULL
Business Type              Ice Cream Equipment
Chinese Food Equipment     Ricers
Concession Equipment       Concession 

最佳答案

这应该是您要查找的内容:

   SELECT
       IF (MT.ITEM LIKE '%USED-%', 'Used Restaurant Equipment', CT.TIER1) AS TIER1,
       CT.TIER2
   FROM
       trx.table1 MT
           LEFT JOIN
       trx.table2 CT1 ON MT.ITEM = CT1.ITEM
           LEFT JOIN
       trx.table3 CT ON CT1.WEB_NUM = CT.WEBNUMBER
   GROUP BY
       IF (MT.ITEM LIKE '%USED-%', 'Used Restaurant Equipment', CT.TIER1)
   LIMIT 0 , 15

关于MYSQL IF 字段包含 THIS 使其他字段 THAT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13824457/

相关文章:

mysql - Mysql 中的排序规则问题

mysql - 如何在 SSIS 中使用 Dynamic AX 源组件编写联接

无法让 if 语句/while 循环工作

arrays - Swift 3.0 Xcode 中是否有类似于 "If Any"的语句

c - 在 C 中执行大量字符串连接?

php - 如何在 php 中连接 <input> 标签值 ='' 属性

mysql - 使用来自另一个表的数据过滤 MySQL 表

MYSQL:两个表之间的 UNION 结果,如果在第二个表中找到 PK,则省略第一个表中的记录

Java Else if 老虎机不检查所有数字是否相同

python - 如何在 python 数据帧中的确定行之后添加一个空行?