Я пытаюсь найти среднее время между отказами сериализованного оборудования. Я использую Access 2013 для своей базы данных, и у меня также есть Access 2016 Моя проблема заключается в том, что у меня есть несколько записей для серийных номеров с датами начала гарантии и датами поступления на работу. Мне нужно рассчитать дни между каждой работой, если серийные номера совпадают. Использование> для поиска дат и их последующего расчета прекрасно работало, пока у меня не было более одной записи для серийного номера.
Я пытался использовать свойство соединения между двумя таблицами, но не смог правильно рассчитать даты с более чем двумя записями
Ниже мое заявление sql. Я бы предпочел использовать VBA для расчета этого, если это возможно. Я могу опубликовать свои данные с критериями, которые я ищу, это мой первый пост.
SELECT qry_MTBF_Warranty_Date_Closed.BarCode,
tbl_Closed_Jobs.Cust_Part,
tbl_Closed_Jobs.Desc,
tbl_Closed_Jobs.Plant,
tbl_Closed_Jobs.Date_Ent,
qry_MTBF_Warranty_Date_Closed.Warranty_Activation,
qry_MTBF_Warranty_Date_Closed.Warr_WO,
qry_MTBF_Warranty_Date_Closed.Cust_Ref,
qry_MTBF_Warranty_Date_Closed.Rel_No,
(tbl_Closed_Jobs.Date_Ent-
[qry_MTBF_Warranty_Date_Closed].Warranty_Activation) AS MTBF,
"C" AS Status,
tbl_Closed_Jobs.Prty
FROM qry_MTBF_Warranty_Date_Closed
INNER JOIN tbl_Closed_Jobs ON qry_MTBF_Warranty_Date_Closed.BarCode = tbl_Closed_Jobs.BarCode
WHERE (((tbl_Closed_Jobs.Date_Ent)>=([qry_MTBF_Warranty_Date_Closed].[Warranty_Activation])) AND ((tbl_Closed_Jobs.Prty) Not Like "1C*"))
ORDER BY tbl_Closed_Jobs.Cust_Part;
Я ожидаю, что у меня будут выходные данные только в тех случаях, когда мой серийный номер (штрих-коды) совпадает, а коды приоритета не равны 1C. Я могу опубликовать файл Excel, если это поможет.
Спасибо
Итак, у меня есть SQL, чтобы найти количество дней между двумя датами, если есть только два соответствующих штрих-кода. Мне нужно знать разницу дней между каждой записью. Приведенный ниже sql даст мне минимальное и максимальное количество дней и разницу между ними, но некоторые штрих-коды будут иметь несколько записей, и мне нужно знать разницу между каждой записью, если штрих-коды совпадают.
ВЫБЕРИТЕ t1.BarCode, max (abs (DateDiff ("d", t3.Date_, t1.Date_Warranty))) AS DateDifference
ОТ tbl_MTBF_Multiple_Entries КАК ВНУТРЕННЕЕ СОЕДИНЕНИЕ t1 (ВЫБЕРИТЕ t2.BarCode как BarCode_, Макс (t2.Date_Ent) как Date_
FROM tbl_MTBF_Multiple_Entries t2
GROUP BY t2.BarCode
) КАК t3 ВКЛ t1.BarCode = t3.Barcode_
ГДЕ t1.Date_Warranty