Запрос в MySQL и PHP

Как я могу сделать запрос в mysql, который позволяет мне:

  • Подсчет повторяющихся записей по дате.
  • Затем разделите значение на общее количество повторных записей по дате.

Пример:

introducir la descripción de la imagen aquí

Поэтому я ищу запрос в mysql С помощью php я могу разделить время на общее количество оборудования.

Я хочу получить следующий результат:

  • Подсчитать оборудование, повторенное по дате, как показано в примере оборудования: 600134 повторяется дважды 01/01/ 2019, тогда подсчет этой записи приведет к 2.

  • Теперь возьмите первое время внимания, которое будет номер 1.

  • А затем разделите количество подсчитанного оборудования, которое изначально было 2/1.

Было бы подсчитано 2 повторных записи 01/01/2019 между 1 = 0,5 .

Мой текущий запрос выглядит так:

SELECT id,fecha,turno,flota,equipo,pos,razon,llanta,serial,programada,destino,grupo,diseno,tamano,compuesto,down_in,ti_attenequi,ti_downequi,COUNT(*) as id_down FROM tiempos 
GROUP BY equipo,pos,fecha order by fecha ASC

3
задан 29.11.2019, 21:38
2 ответа

С этой консультацией:

select fecha, equipo, count(*)
from tabla
group by fecha, equipo
having count(*) > 1

возвращает Тебе команды, которые у них есть mГЎs реестра в данной дате.

Потом с PHP ты можешь пробегать этот курсор и использовать это, чтобы вычислять твою среднюю величину.

podrГ, - чтобы думать о какой-то консультации mГЎs сложная, но у меня нет идеи cuГЎntos реестры смогите иметь таблицу, чтобы видеть эффективность.

3
ответ дан 01.12.2019, 10:35
  • 1
    Привет Эдуардо, большое спасибо из-за твоего ответа уже я это протестировал, но мне дает ошибку эта консультация. – estrada 29.11.2019, 22:06
  • 2
    @estrada Deberí схвати показывать его qué ошибка дает тебе, así он será má s fá cil помогать тебе. – ArtEze 30.11.2019, 01:51

эта консультация приносит тебя в количество повторенных дат, с помощью php ты разделяешь это общее количество, с которым ты нуждаешься.

SELECT COUNT(*) Repetidos, fecha FROM test GROUP By fecha HAVING Repetidos > 1

или это вычисление в том же sql 'в 1 идет стоимость, которую ты хочешь вычислить'.

SELECT (1/COUNT(*)) CalculoRepetidos, fecha FROM test GROUP By fecha HAVING COUNT(*) > 1
2
ответ дан 01.12.2019, 10:35
  • 1
    Добрый вечер eirc, большое спасибо из-за твоего ответа, равный он дает мне ошибку: Warning: Деление by zero in C:\xampp\htdocs\estrada\procesos\excel\reporte_tiempos.php он-лайн 74, в этой линии 74 я имею: $ toal= $res [" ti_attenequi"] / $res [" id_down"]; эти переменные, которые это divisió n времени atenció n (ti_attenequi) между общим количеством команд. – estrada 29.11.2019, 22:17
  • 2
    уже я это протестировал лучше и я лишаю себя ошибки разместите следующее: $ toal= $res [" ti_attenequi"] / $res [" Repetidos"]; но таким же образом увидев реестры 6500 реестров сейчас только, он показывает мне 315 реестров. – estrada 29.11.2019, 22:21
  • 3
    Дело в том, что консультация просачивается в количество повторенных дат – eric 29.11.2019, 23:03

Теги

Похожие вопросы