Problema con group by e clusole varie

di il
1 risposte

Problema con group by e clusole varie

Ciao!

sto cercando di creare eseguire una query che mi ricerchi sia nel titolo, che nei vari attributi estesi collegati.
ma ottengo sempre questo errore:

Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'Sql1437981_1.webinar.w_titolo' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
ho provato in due modi:

SELECT
w_title,
w_alias,
wa_chiave,
wa_valore
FROM webinar
INNER JOIN utenti ON p_id = w_publisher_id
INNER JOIN webinar_attrs ON wa_webinar = w_id
WHERE w_approvato = 1
AND w_visibile = 1
AND (
    (wa_chiave = 'categoria' AND wa_valore LIKE "%IL Retail Marketing nella Fase 3%")
    OR
    (w_titolo LIKE "%IL Retail Marketing nella Fase 3%")
)
GROUP BY w_alias
o con union all:

SELECT
w_titolo
w_alias,
wa_chiave,
wa_valore
FROM webinar
INNER JOIN utenti ON p_id = w_publisher_id
INNER JOIN webinar_attrs ON wa_webinar = w_id
WHERE w_approvato = 1
AND w_visibile = 1
AND wa_chiave = 'categoria' AND wa_valore LIKE "%IL Retail Marketing nella Fase 3%"
UNION ALL
SELECT
w_titolo,
w_alias,
wa_chiave,
wa_valore
FROM webinar
INNER JOIN utenti ON p_id = w_publisher_id
INNER JOIN webinar_attrs ON wa_webinar = w_id
WHERE w_approvato = 1
AND w_visibile = 1
AND w_titolo LIKE "%IL Retail Marketing nella Fase 3%"
GROUP BY w_alias
suggerimenti??

1 Risposte

  • Re: Problema con group by e clusole varie

    Mi sembra di aver risolto così:
    
    SELECT w_id, w_titolo, w_alias
                FROM (
                    SELECT 
                    w_id,
                    w_titolo,
                    w_alias
                    FROM webinar
                    INNER JOIN utenti ON p_id = w_publisher_id
                    INNER JOIN webinar_attrs ON wa_webinar = w_id
                    WHERE w_approvato = 1
                    AND w_visibile = 1
                    AND wa_chiave = 'categoria' 
                    AND wa_valore LIKE ?
                    UNION
                    SELECT
                    w_id,
                    w_titolo,
                    w_alias
                    FROM webinar
                    INNER JOIN utenti ON p_id = w_publisher_id
                    WHERE w_approvato = 1
                    AND w_visibile = 1
                    AND w_titolo LIKE ?
                ) derived_table
    
Devi accedere o registrarti per scrivere nel forum
1 risposte