【发布时间】:2014-04-02 18:39:46
【问题描述】:
我有一张记录公司不同缺陷记录的表格。表是这样的
ITMNBR Defect Reference_Designator RepairCenter
8800RTO001700 Componente / Placa abierto U1U2 FG
8800HIB001075V Componente Equivocado (NumeroParte) R53 SB
8800HIB001075V Ensamble Incorrecto (produccion) R19 SB
8800RTO000400 Componente / Placa abierto U1 SB
8800RTO003200 Componente Polaridad Inversa ZD2 SB
8800HIB001048 NO SOLDADURA T1 SB
8800HIB001048 Componente / Placa abierto U2 SB
8800HIB001048 Componente / Placa abierto U2 SB
Etc.
我只想咨询制造中最重复的三个缺陷,我做了这个。
SELECT defect, COUNT(*) FROM reportefallas WHERE RepairCenter ='SB'
AND (CREADT BETWEEN NOW() - INTERVAL 7 DAY AND NOW()) #Select the Dates
AND (Defect IN ('Componente / Placa dañada X alto voltaje','Pin / Patita Quebrado','Componente / Placa Quemada','Componente Defecto Cosmetico','Falla no Duplicada','Soldadura Crackeada','Soldadura Fria','Parametros Incorrectos en la torre','Parametros Incorrectos en el dibujo','Componente dañado fisicamente','Conector mal colocado (inclinado)','Tornillo / Rondana Suelto','Pista Levantada (dañada)','Componente Ausente','Soldadura Derretida','Componente Equivocado (NumeroParte)','NO SOLDADURA','Componente/Placa no programada','Conector mal ensamblado','No se encontro problema','Tornillo / Rondana Flojo','Componente / Placa abierto','Pin Hole','Pin / Pata levantada (no Soldadura)','Componente Polaridad Inversa','Puente de Soldadura','Componente Desfasado Pad','Componente / Placa en corto','Splash de Soldadura','LEDs con VF diferente / equivocado','LEDs con VF alto','LEDs con VF bajo','Ensamble Incorrecto (produccion)','Componente posicion Equivocada (referencia)','Cable ensamblado posicion incorrecta'))
GROUP BY defect
ORDER BY COUNT(*) DES
LIMIT 3;
我有下一个结果
Defect COUNT(*)
Componente/ Placa abierto 5
Componente / Placa dañada X alto voltaje 4
Componente dañado fisicamente 3
现在,我需要从缺陷所在的同一张表中查询,只有我已经获得的三个最重复的缺陷,这就是我想要的结果:
ITMNBR Defect Reference_Designator
8800ITH001700 Componente / Placa abierto F2-U1(SHORT)-U2(SHORT)
8800ITH001700 Componente / Placa abierto F2-U1(SHORT)-U2(SHORT)
8800ITH001700 Componente / Placa abierto F2-R29-R22-R19-R32-R13-U1(SHORT)-U2(SHORT)
8800ITH001700 Componente / Placa abierto F2-R29-R22-R19-R32-R13-U1(SHORT)-U2(SHORT)
8800ITH001700 Componente / Placa abierto F2
8850HZL0015EX Componente / Placa dañada X alto voltaje C6-C7
8800HIB001084 Componente / Placa dañada X alto voltaje R7-C20-MOV1
8850HIB004205 Componente / Placa dañada X alto voltaje C21-C42
8800HIB004220 Componente / Placa dañada X alto voltaje R22 SWITH-R44 SWITH
8850HIB004206 Componente dañado fisicamente C42
8850HIB004202 Componente dañado fisicamente F1
8800HIB0131EX Componente dañado fisicamente R37
我尝试了下面的代码,但它不接受 LIMIT。
SELECT ITMNBR, Defect, Reference_Designator FROM reportefallas
WHERE Defect IN (SELECT defect FROM reportefallas WHERE RepairCenter='SB'
AND(CREADT BETWEEN NOW() - INTERVAL 7 DAY AND NOW()) AND (Defect IN ('Componente / Placa dañada X alto voltaje','Pin / Patita Quebrado','Componente / Placa Quemada','Componente Defecto Cosmetico','Falla no Duplicada','Soldadura Crackeada','Soldadura Fria','Parametros Incorrectos en la torre','Parametros Incorrectos en el dibujo','Componente dañado fisicamente','Conector mal colocado (inclinado)','Tornillo / Rondana Suelto','Pista Levantada (dañada)','Componente Ausente','Soldadura Derretida','Componente Equivocado (NumeroParte)','NO SOLDADURA','Componente/Placa no programada','Conector mal ensamblado','No se encontro problema','Tornillo / Rondana Flojo','Componente / Placa abierto','Pin Hole','Pin / Pata levantada (no Soldadura)','Componente Polaridad Inversa','Puente de Soldadura','Componente Desfasado Pad','Componente / Placa en corto','Splash de Soldadura','LEDs con VF diferente / equivocado','LEDs con VF alto','LEDs con VF bajo','Ensamble Incorrecto (produccion)','Componente posicion Equivocada (referencia)','Cable ensamblado posicion incorrecta'))
GROUP BY defect
ORDER BY COUNT(*) DESC
LIMIT 3)
有人有什么想法吗?
对不起,西班牙语和糟糕的英语,希望你能理解。
【问题讨论】:
-
MySQL Subquery LIMIT的可能重复
标签: mysql