#php #mysql #sql
#php #mysql #sql
Вопрос:
У меня есть две таблицы, поскольку 1-я — «запас», а 2-я — «части»
поля данных таблицы stock являются
id | part_id | qty | status
поля данных таблицы частей являются
id | partName | status
Я закодировал для поиска суммы поля qty в том же идентификаторе детали.
Этот запрос выглядит следующим образом.
SELECT `stock`.`idstock`, `parts`.`partName`, SUM(`stock`.`qty`)
FROM `stock` INNER JOIN
`parts`
ON `parts`.`id` = `stock`.`part_id`
WHERE `stock`.`statu`='1'
Но этот запрос выполняется некорректно.
Мне нужно отобразить сумму поля данных qty для того же идентификатора детали в виде списка.
Комментарии:
1. Давайте исключим опечатку — это правильно?
statu
=’1’`
Ответ №1:
Насколько я понимаю, вы пытаетесь получить сумму величин по частям. Если это так, то нет смысла иметь stock.idstock
в списке выбора, и вам понадобится group by
предложение.
Попробуйте это:
SELECT parts.id, parts.partName, sum(stock.qty)
FROM stock
INNER JOIN parts on stock.part_id = parts.id
WHERE stock.status = '1'
GROUP BY parts.id, parts.partName
Комментарии:
1. Большое спасибо. этот запрос работает отлично. Еще раз спасибо…..
2. В этой таблице запасов статус «1» — это входящие элементы, а статус «2» — это выход элемента. Мне нужно найти доступное количество акций. и отобразить его на веб-странице. Пожалуйста, помогите мне это сделать.