Qualcuno può aiutarmi con l'effettuare la seguente richiesta sul mio db?
In pratica avrei bisogno di prendere i messaggi dei 28 utenti con più di 500 messaggi; per ogni messaggio dovrei avere anche il nome utente, la data del messaggio, e il topic di riferimento?
Le tabelle sono le seguenti:
"posts" contiene "author_name" "post" e "topic_id" nonché la "post_date" che è in formato "1145179736" (es.)
"topics" invece ha "tid" (immagino sia il topic_id) e "title"
infine "members" ha "name" e "posts" che è appunto il numero dei messaggi (che nel mio caso deve essere >500)
SELECT *
FROM ibf_posts, ibf_topics, ibf_members
WHERE ibf_posts.author_name = ibf_members.name
AND ibf_posts.topic_id = ibf_topics.tid
AND ibf_members.posts >500
Eh, bisognerebbe capire come è calcolato il numero che sta in post_date, farsi due conti e mettere un vincolo al valore (deve essere maggiore di... e minore di...?).
si infatti la data è conservata nel formato lungo (come avevo scritto nel post di apertura): come si fa a capire? o meglio, il numero più alto è la data più recente?
A occhio così il numero sembrerebbe il numero di secondi passati dal 1° Gennaio 1970 (data standard del php), dato che in un anno ci sono 31536000 secondi e 1145179736/31536000 fa 36 e quasi un terzo (quindi direi che quel messaggio è stato scritto verso metà aprile? ). Quindi per individuare i messaggi del 2005 credo che la data deve essere compresa tra 1103760000 (cioè 31536000*35) e 1135296000 (cioè 31536000*36).
Puoi pur sempre fare una prova mandando due messaggi ora e controllando se il valore può essere quello dei secondi...
SELECT *
FROM ibf_posts, ibf_topics, ibf_members
WHERE ibf_posts.author_name = ibf_members.name
AND ibf_posts.topic_id = ibf_topics.tid
AND ibf_members.posts >500
AND ibf_posts.post_date >1103760000
AND ibf_posts.post_date <1135296000
ora una cosa estranea al mysql.. non so se puoi aiutarmi.
Ho esportato i dati per excel e quindi li posso aprire con questo programma. Mi servirebbe però inserire in Excel una funzione che traduca il formato della data nella realtiva colonna...
visto che sai il calcolo per ottenere la data, sai per caso pure come farlo usare ad excel?