On the off chance anyone on here is good at pulling apart SQL queries, I can't get this one to work:
SELECT p.*,
FLOOR(prodratingtotal / prodnumratings) AS prodavgrating, pi.*,
SUBSTRING_INDEX(SUBSTRING_INDEX(pi.imagefilestdsize, 'x', 2), ' ', 1) / SUBSTRING_INDEX(SUBSTRING_INDEX(pi.imagefilestdsize, 'x', -1), ' ', 2) as ratio,
(SELECT orderid, op.ordprodname, op.ordprodid, SUM(op.ordprodqty) AS qty FROM isc_orders o JOIN isc_order_products op on op.orderprodid=o.orderid WHERE orddate BETWEEN 1271853079 AND 1272637707 GROUP BY op.ordprodid) AS qty,
(SELECT discountpercent FROM isc_customer_group_discounts disc WHERE disc.discounttype='PRODUCT' AND disc.customergroupid='9' AND disc.catorprodid=p.productid) AS prodgroupdiscount,
(SELECT discountmethod FROM isc_customer_group_discounts disc WHERE disc.discounttype='PRODUCT' AND disc.customergroupid='9' AND disc.catorprodid=p.productid) AS discountmethod
FROM (SELECT DISTINCT ca.productid, FLOOR(prodratingtotal / prodnumratings) AS prodavgrating
FROM isc_categoryassociations ca
INNER JOIN isc_products p ON p.productid = ca.productid WHERE p.prodvisible = 1 AND p.prodbrandid = 51) AS ca
INNER JOIN isc_products p ON p.productid = ca.productid
LEFT JOIN isc_product_images pi ON (pi.imageisthumb = 1 AND p.productid = pi.imageprodid)
ORDER BY p.prodcode ASC, p.prodcode ASC
I know that it works fine like this:
SELECT p.*,
FLOOR(prodratingtotal / prodnumratings) AS prodavgrating, pi.*,
SUBSTRING_INDEX(SUBSTRING_INDEX(pi.imagefilestdsize, 'x', 2), ' ', 1) / SUBSTRING_INDEX(SUBSTRING_INDEX(pi.imagefilestdsize, 'x', -1), ' ', 2) as ratio,
(SELECT discountpercent FROM isc_customer_group_discounts disc WHERE disc.discounttype='PRODUCT' AND disc.customergroupid='9' AND disc.catorprodid=p.productid) AS prodgroupdiscount,
(SELECT discountmethod FROM isc_customer_group_discounts disc WHERE disc.discounttype='PRODUCT' AND disc.customergroupid='9' AND disc.catorprodid=p.productid) AS discountmethod
FROM
(SELECT DISTINCT ca.productid, FLOOR(prodratingtotal / prodnumratings) AS prodavgrating
FROM
isc_categoryassociations ca
INNER JOIN isc_products p ON p.productid = ca.productid WHERE p.prodvisible = 1 AND p.prodbrandid = 51) AS ca
INNER JOIN isc_products p ON p.productid = ca.productid
LEFT JOIN isc_product_images pi ON (pi.imageisthumb = 1 AND p.productid = pi.imageprodid)
ORDER BY p.prodcode ASC, p.prodcode ASC
So I'm basically trying to get this line in there:
(SELECT orderid, op.ordprodname, op.ordprodid, SUM(op.ordprodqty) AS qty FROM isc_orders o JOIN isc_order_products op on op.orderprodid=o.orderid WHERE orddate BETWEEN 1271853079 AND 1272637707 GROUP BY op.ordprodid) AS qty,
It keeps throwing
Error Code: 1241. Operand should contain 1 column(s)
Baffled...
Any ideas?