MySQL: Errore 1120 — condizione ON non consentita su CROSS JOIN
La sintassi `CROSS JOIN` produce un prodotto cartesiano e non ammette la clausola `ON`; per specificare criteri di filtro utilizzare `INNER JOIN ... ON` oppure la clausola `WHERE`.
Categoria
Articoli tecnici organizzati per gruppo funzionale.
La sintassi `CROSS JOIN` produce un prodotto cartesiano e non ammette la clausola `ON`; per specificare criteri di filtro utilizzare `INNER JOIN ... ON` oppure la clausola `WHERE`.
Una sottoquery utilizzata in un contesto scalare (es. in un confronto `=` o in una clausola `SET col = (SELECT ...)`) restituisce due o più record anziché un unico valore.
La sessione client ha attiva l'opzione `sql_safe_updates=1` (standard in MySQL Workbench), che impedisce modifiche o cancellazioni massive prive di un filtro su una colonna indicizzata o con clausola LIMIT.
La clausola `ORDER BY` applicata a singoli rami di una `UNION` senza racchiudere le singole SELECT tra parentesi tonde genera un errore di sintassi del parser.
Tutti i rami di un'istruzione `UNION` o `UNION ALL` devono restituire esattamente lo stesso numero di campi selezionati.
Ogni sottoquery utilizzata nella clausola `FROM` come tabella virtuale derivata deve obbligatoriamente avere un alias assegnato (es. `FROM (SELECT ...) AS t`).
Il valore che si tenta di inserire supera il valore minimo o massimo consentito per il tipo di dato della colonna (ad esempio un intero superiore a 127 in un campo `TINYINT` con strict mode attivo).
Compare in strict mode quando una stringa non numerica viene inserita in un campo intero oppure un valore ENUM non valido viene forzato nella colonna.