Archivio perAprile, 2008

Come impazzire con MySQL

logo MySQL

Ma esiste una locate che cerchi da destra? Perché io sono impazzito…

Nel DB di http://elezioni.softwarelibero.it/ ci sono i dati relativi ai candidati.

La tabella è strutturata così:

CREATE TABLE candidato (
    id INT PRIMARY KEY AUTO_INCREMENT,
    nome VARCHAR(150) NOT NULL UNIQUE,
    accetta TINYINT,
    email VARCHAR(150),
    telefono VARCHAR(20),
    data DATETIME,
    partito_id INT
);

Perché c’è il campo nome e non ho messo nome e cognome?

Sarebbe piaciuto molto anche a me, però dovevo fare il parsing dei dati dai dati forniti dal Ministero dell’Interno.

Se andate a vedere i file che il Ministero pubblica (sotto “Politiche: le liste ammesse”) noterete che i il nome e il cognome dei candidati sono inseriti nella stessa cella, discernere l’uno (il nome) dall’altro (il cognome) non è cosa semplice: non tutti si chiamano Paolo Rossi, c’è chi si chiama Paolo Alberto Rossi, Paolo Dei Rossi, Paolo De’ Rossi detto Pinuccio, fare il parsing non è una cosa facile.

Visti i tempi stretti ho semplicemente “buttato” i dati nel DB così, nudi e crudi. Questa semplificazione iniziale però l’ho pagata dopo.

Ed ecco qua cosa ho pagato: per il comunicato (una tantum) i dati dovevo tirarmeli fuori nel formato Cognome Nome (mentre erano dentro come Nome Cognome), la cosa era un pochino complicata, ma ecco una soluzione approssimata: prendo il token più a destra dal campo nome e lo metto a sinistra.

Era necessario quindi selezionare lo spazio più a destra e rompere la stringa in quel punto. Facile. Il problema era farlo con le funzioni sulle stringhe di MySQL e, a meno che non mi sia perso qualcosa, l’unico modo che ho trovato era usare la funzione locate che, come ho detto all’inizio inizia a cercare una sottostringa da sinistra.

Be’ , ecco l’orrida query che ho fatto, me ne vergogno un po’ devo ammettere, infatti chiedo a qualche SQL hacker se mi risolve la situazione con qualcosa di più elegante : ). Ah sì ecco qua il mostro, aspe’ che apro la gabbia:

Leggi il seguito di questo post »

Commenti (3)

Comunicato Stampa iniziativa elezioni.softwarelibero.it (ehi c’è la mappa delle firme)

Dimenticavo che c’era anche la mappa delle firme, è carina:
http://elezioni.softwarelibero.it/visualizza/mappa_firme
usiamo le api di http://www.openstreetmap.org/.

COMUNICATO STAMPA
10/04/2008

======================================================================
Vota per il Software Libero
oltre 80 candidati e 1700 elettori!
======================================================================

Ultimi giorni per la campagna “Vota per il Software Libero” che ad oggi,
dopo soli 7 giorni, conta l’adesione di oltre 80 candidati, 1700
elettori in tutta Italia e più di 100000 visite.

* http://elezioni.softwarelibero.it/visualizza/aderenti
* http://elezioni.softwarelibero.it/visualizza/mappa_firme
Leggi il seguito di questo post »

Commenti (1)

Parte l’iniziativa “Vota per il Software Libero”!

Con enorme gioia vi comunico che è partita l’iniziativa Vota per il Software Libero promossa dall’Associazione Software Libero (stasera il comunicato stampa).

Vota per il Software Libero

un mio amico mi ha detto che non si capiva un cazzo del post, l’ho cambiato un po’ facendo copia incolla di alcune parti del sito dell’iniziativa : )

ma a che serve?

be’, durante questa campagna elettorale si è sentito parlare di tutto… ma di software libero? L’iniziativa affronta la questione da due prospettive diverse:

Leggi il seguito di questo post »

Commenti (8)