Query per la pulizia del DataBase

In questa pagina potrai trovare le principali query per eseguire dei controlli periodici sulla base dati.
Ognuna di queste query può essere eseguita collegandoti al phpmyadmin dal menu pricipale di questa applicazione, entrando nella sezione SQL.

Le principali funzioni SQL che utilizzeremo per il controllo dei dati sono le seguenti:

Clicca su ognuna delle funzioni elencate per aprire la documentazione

Sezione query

1) Questa query trova tutte le mail che hanno il carattere ","
SELECT * FROM contact_requests WHERE LOCATE(',', email) > 0

2) Questa query fa un update eliminado la stringa che si trova dopo il separatore specificato (in questo caso viene eliminato anche il separatore)
UPDATE contact_requests SET email = SUBSTRING(email, 1, LOCATE(',', email) - 1) WHERE LOCATE(',', email) > 0

3) Questa query utilizza il metodo REPLACE, effettua una sostituzione di stringa
UPDATE contact_requests SET sito = REPLACE(sito, 'http---', 'http://') WHERE sito LIKE 'http---%'

4) Questa query permette di individuare duplicati nel campo email
SELECT tab.* 
FROM contact_requests AS tab 
INNER JOIN (
    SELECT email 
    FROM contact_requests 
    GROUP BY email HAVING COUNT(email) > 1
) 
AS dup 
ON dup.email = tab.email AND NOT (dup.email = '')

5) Questa query permette di trovare email non valide
SELECT * FROM contact_requests where !(email REGEXP '^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$') AND email != ''

6) Questa query permette di trovare telefoni duplicati
SELECT * FROM contact_requests WHERE telefono != '' GROUP BY telefono HAVING COUNT(telefono) > 1 AND email = ''

7) In caso di richiesta di estrazione senza restrizioni ad un numero specifico di categorie, si può interrogare la base dati attraverso il Filtro 3 utilizzando la caratteristica di filtro per sotto-categoria (campo "alto_reddito") attivandola prima sistematicamente per le categorie, es.
UPDATE `sotto_categorie` SET alto_reddito = 'YES'