мне нужна помощь с запросом SQL, где мне нужноSQL переменной запроса в объединение + COUNT()
SELECT MachineID from TABLE1
, а затем
Count(Passfail) from TABLE2 WHERE MachineID= *MACHINEID
from the SELECT
заявление ранее в одной таблице
мне нужна помощь с запросом SQL, где мне нужноSQL переменной запроса в объединение + COUNT()
SELECT MachineID from TABLE1
, а затем
Count(Passfail) from TABLE2 WHERE MachineID= *MACHINEID
from the SELECT
заявление ранее в одной таблице
Ты почти написал это прямо здесь. Вы должны прочитать немного о соединяющую и SQL group by
:
select T1.MachineId, count(T2.Passfail) from
Table1 T1 inner join Table2 T2 on T1.MachineId = T2.Machine Id
group by T1.MachineId
EDIT: Для отдельного счетчика в зависимости от значений PassFail, я хотел бы использовать:
select T1.MachineId,
sum(case when T2.PassFail='pass' then 1 else 0 end) as 'pass',
sum(case when T2.PassFail='fail' then 1 else 0 end) as 'fail'
from Table1 T1 inner join
Table2 T2 on T1.MachineId = T2.machineId
group by T1.machineId
Привет! спасибо за быстрый ответ! что делать, если у меня есть 2 счета для ввода? например, счет (passfail) WHERE passfail = «pass» и count (passfail) WHERE passfail = «fail»? было бы заявление аналогичным? – Xion
Я изменил свой ответ, чтобы разместить ваше новое требование. @Xion – Ash
Большое вам спасибо! это соответствует тому, что мне нужно – Xion
Можете ли вы показать нам упрощенную таблицу структура, данные выборки и ожидаемый результат? – artm
Ваш вопрос не имеет смысла. Если во втором запросе вы уже знаете идентификатор машины, тогда зачем нужен первый запрос? –
TABLE1 имеет machineID и MachineName ТАБЛИЦА 2 Passfail и machineID , что мне нужно, как выход будет MachineID 1 PassFail 10 я прошу прощения за horrilbe объяснение, как им полный новичок на этом – Xion