How can I place a WHERE statement on this query?

0

Query:

SELECT 'i'.'name', 'i'.'id', 'i'.'img', 'd'.'url', GROUP_CONCAT(t.name SEPARATOR ', ') as tags
FROM 'demos' i 
INNER JOIN 'details' d ON 'i'.'id' = 'd'.'demo_id'
INNER JOIN tags t ON t.demo_id = i.id
GROUP BY 'i'.'id'
ORDER BY 'i'.'created_at' ASC

An idea of how it should look

SELECT 'i'.'name', 'i'.'id', 'i'.'img', 'd'.'url', GROUP_CONCAT(t.name SEPARATOR ', ') as tags
FROM 'demos' i
INNER JOIN 'details' d ON 'i'.'id' = 'd'.'demo_id'
INNER JOIN tags t ON t.demo_id = i.id
GROUP BY 'i'.'id'
WHERE i.id = req.params.id
    
asked by Santiago D'Antuoni 10.04.2017 в 18:22
source

2 answers

1

WHERE must go after FROM and JOINS

SELECT 'i'.'name', 'i'.'id', 'i'.'img', 'd'.'url', GROUP_CONCAT(t.name SEPARATOR ', ') as tags
FROM 'demos' i
INNER JOIN 'details' d ON 'i'.'id' = 'd'.'demo_id'
INNER JOIN tags t ON t.demo_id = i.id

WHERE i.id = req.params.id

GROUP BY 'i'.'id'
    
answered by 10.04.2017 / 18:27
source
0

Good day the Where goes before the GROUP BY

SELECT i . name , i . id , i . img , d . url , GROUP_CONCAT (t.name SEPARATOR ',') as tags FROM demos i INNER JOIN details d ON i . id = d . demo_id INNER JOIN tags t ON t.demo_id = i.id

WHERE i.id = req.params.id

GROUP BY i . id

Greetings

    
answered by 10.04.2017 в 19:26