我想编写一个查询来获取一组结果。在这样做时,我希望能够保持特定字段中某个值的出现次数。我试图从设备表中提取部件号的记录,从表中提取各种部件号。
例如,这是我的结果集
CISCO1841
CISCO2610
CISCO2650
CISCO2610
CISCO2650
CISCO2500
我应该跟踪
CISCO1841
发生一次,CISCO2610
发生两次,CISCO2650
发生两次,CISCO2500
发生一次。我需要存储此计数并根据此计数设置另一个列值。在MYSQL中有一种有效的方法吗?
答案 0 :(得分:1)
答案 1 :(得分:0)
您可以在插入数据的表格上使用trigger,并且该触发器将通过在单独的表格中更新每个单词的计数器(例如:CISCO2650)来计算出现次数。
或者你可以尝试下面的查询,但它不是动态的:
SELECT
SUM(IF(M_PART_NBR = 'CISCO2610',1,0)) as NBR1,
SUM(IF(M_PART_NBR = 'CISCO2811',1,0)) as NBR2,
SUM(IF(M_PART_NBR = 'CISCO2911',1,0)) as NBR3
FROM
C2_INST_PRODUCT WHERE M_PART_NBR LIKE '%CISCO2%'