1
У меня есть эти две таблицы, которые относятся друг к другу с колонкой itemid
. Мне удалось сделать сумму различных значений itemid
, как показано в первом примере с data_table
.Сумма данных из таблицы между датами в другой таблице
Теперь я хочу связать эту сумму по конкретным датам в другой таблице, но я не могу. Пожалуйста, кто-нибудь может мне помочь?
items_table
+--------+-----------+------------+ | itemid | published | publish_up | +--------+-----------+------------+ | 1 | 1 | 02-01-2014 | +--------+-----------+------------+
data_table
+--------+---------+------+ | itemid | fieldid | data | +--------+---------+------+ | 1 | 27 | 5 | | 1 | 28 | 10 | | 1 | 29 | 5 | +--------+---------+------+
Этот запрос в порядке:
SELECT (SELECT SUM(data) FROM data_table WHERE fieldid='27')
+ (SELECT SUM(data) FROM data_table WHERE fieldid='28')
+ (SELECT SUM(data) FROM data_table WHERE fieldid='29')
Но не между датами:
SELECT (SELECT SUM(data) FROM data_table WHERE fieldid='27')
+ (SELECT SUM(data) FROM data_table WHERE fieldid='28')
+ (SELECT SUM(data) FROM data_table WHERE fieldid='29')
WHERE (publish_up BETWEEN '2014-01-01 00:00:00' AND '2014-01-31 00:00:00')
FROM items_table
Хорошо, но используйте JDatabaseQuery для этого. – Elin
thx очень ...! – sebas
SELECT SUM (данные) FROM data_table WHERE fieldid IN (SELECT itemid FROM items_table WHERE (publish_up BETWEEN '2014-01-01 00:00:00' AND '2014-01-31 00:00:00')) – sebas