Postata in: 'Selezionare record per anno da data sql'

Michele Ladonia

E se invce vuoi selezionare i dati dell'anno precedente ti basterà scrivere la query sql in questo modo:SELECT * FROM my_table WHERE campo_data = YEAR(DATE_SUB(CURDATE(), INTERVAL 1 YEAR)) 

Pubblica
23-03-2020 19:40:52 +3

Postata in: 'Errore: column count doesn't match value count at row 1 - fix'

Michele Ladonia

Il messaggio di errore restituitoti da MySql:column count doesn't match value count at row 1significa che il numero dei valori (dati) che tu stai cercando di inserire tramite la insert non corrisponde con il numero di colonne presenti nella tabella, e questo può accadere per 2 motivi:Hai definito meno colonne nella tabella rispetto ai dati c

Pubblica
19-03-2020 16:48:25 +2

Postata in: 'Aggiornare i campi di una tabella mysql tramite subquery da un'altra tabella'

Michele Ladonia

Potresti farlo anche con un JOIN sulle due tabelle, se vuoi farlo con una SELECT (subquery) sulla seconda tabella, puoi farlo in questo modo:UPDATE table1 t1, (SELECT id, name FROM table2) t2 SET t1.name = t2.name WHERE t1.id = t2.idNon è poi così difficile aggiornare i data con una subquery ;)

Pubblica
13-03-2020 10:23:40 +1

Postata in: 'Error 1264: out of range value for column - fix'

Michele Ladonia

il valore che tu stai cercando d'inserire 3235977883 è più grande del massimo valore accettabile per il tipo intero INT in MySql che è 2147483647. Ecco perché ricevi quell'errore 1264 di "out of value", perché eccedi la dimensione massima. Per risolvere l'errore potresti contrassegnare il tuo campo INT con UN

Pubblica
08-03-2020 16:11:05 +1

Postata in: 'Ottenere il numero della funzione count'

Michele Ladonia

Nella tua query ti basta cambiareCOUNT(*) FROMinCOUNT(*) as count FROMInoltre ti suggerisco di fare un count magari su 'id' (una chiave primaria) anziché sul totale dei campi (*) della tua tabella, migliorerai la velocità e le prestazioni della tua select.

Pubblica
23-09-2019 16:56:52 0

Postata in: 'Errore: Incorrect integer value: 'NULL' for column 'id' at row 1 - fix'

Michele Ladonia

Prova a scrivere la INSERT in questo modo:INSERT INTO my_table (id, title) values (null, "Mio titolo");se id è settato come chiave primaria con attributo AUTO_INCREMENT, il valore null verrà in automatico sostituito con un intero incrementale alla chiave del record precedente.

Pubblica
09-09-2019 18:59:04 0

Postata in: 'Errore: Data too long for column at row 1 - fix'

Michele Ladonia

Il tipo VARCHAR() in mysql così come anche negli altri RDBMS ha i suoi limiti, ossia un campo (colonna) dichiarato come tale non può contenere una mole di dati più grande di quella dettato dal suo limite ovvero dalla lunghezza specificata per esso. Se tu dichiari un campo come VARCHAR(10), 10 sta ad indicare il numero di c

Pubblica
09-09-2019 12:49:26 +1

Postata in: 'Cambiare la root password in MySql'

Michele Ladonia

Direttamente dalla documentazione ufficiale di MySql, per resettare la root password scrivi:ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

Pubblica
08-05-2019 12:48:55 0

Postata in: 'Cancellare tutti i records duplicati'

Michele Ladonia

Benissimo Giacomo Barrile, la tua è un'ottima soluzione, ma io ho bisogno di cancellare le rows duplicati di una tabella con records già esistenti, alterando la tabella come tu dici cosa accade?

Pubblica
29-04-2019 16:52:08 0

Postata in: 'Come mostrare gli indici di una tabella'

Michele Ladonia

In aggiunta a quanto risposto precedentemente, se hai più database e per elencare gli indici di una tabella devi riferirti ad uno specifico db, basta indicarlo come nella seguente istruzione sql:SHOW INDEX FROM mytable FROM mydb;oppure nella forma sql più compatta:SHOW INDEX FROM mydb.mytable;ovviamente ottieni lo stesso identico risu

Pubblica
10-04-2019 22:13:02 0

Postata in: 'Come usare mysqli_real_escape_string()?'

Michele Ladonia

Sicuramente il file php.ini sul tuo server remoto ha magic_quotes abilitato. Puoi verificarlo eseguendo la semplice istruzione:echo var_dump(get_magic_quotes_gpc()); //Ritorna TRUE (vero) se è abilitatoDisabilita magic_quotes sul server per ottenere un comportamento a livello globale, oppure usa di volta in volta le funzioni di abilitazione

Pubblica
08-04-2019 22:24:00 +1

Postata in: 'Select e Update in una sola query SQL'

Michele Ladonia

Usa la clausola WHERE nella tua query UPDATE ed otterrai direttamente il risultato desiderato senza bisogno di fare prima la SELECT, in questo modo:UPDATE my_tableSET column_id = column_id + 1WHERE column_id = valueCosì non c'è bisogno di fare un'unica query SELECT e UPDATE, semplice no!

Pubblica
06-04-2019 10:36:04 0

Postata in: 'Inserire dati Binary in MySql'

Michele Ladonia

Ho scoperto che in MySql posso definire i dati binary anche con i tipi VARBINARY e BINARY oltre che BLOB

Pubblica
23-05-2018 12:53:19 +1