Ciao a tutti...
Avrei la necessità di estrarre alcuni record da una tabella messaggi con una JOIN su una tabella che mi logga gli accessi a livello di singolo utente (i messaggi appaiono all'interno di un applicativo).
La query che uso è questa:
sqlStr = "SELECT Msg.MsgTitolo, Msg.MsgTesto, Msg.MsgNumVis,"
sqlStr = sqlStr & "NumVisMsg.MsgID, NumVisMsg.NumVis "
sqlStr = sqlStr & "FROM (Msg INNER JOIN NumVisMsg ON "
sqlStr = sqlStr & "Msg.MsgID=NumVisMsg.MsgID) "
sqlStr = sqlStr & "WHERE NumVisMsg.UtenteID='test' "
sqlStr = sqlStr & "AND NumVisMsg.NumVis<Msg.MsgNumVis "
sqlStr = sqlStr & "AND Msg.MsgData<=" & dataoggimod & " "
sqlStr = sqlStr & "AND Msg.MsgDataScad>=" & dataoggimod & " "
sqlStr = sqlStr & "ORDER BY Msg.MsgData DESC"
Prima definisco i campi come di seguito:
dataoggimod = cdate(Right("0" & Month(Date()), 2) & "/" & Right("0" & Day(Date()), 2) & "/" & Year(Date()))
Succede una cosa strana: se tolgo le condizioni delle date mi vengono estratti i record mentre così no...
La cosa ancor più strana è che se mi stampo la query prima di eseguirla appare come vi riporto dopo, senza un pezzo ed errata... chi mi aiuta a capire il perchè ???
Praticamente è come se non mi considerasse la condizione sulle date...
Grazie
Edo
Query:
SELECT Msg.MsgTitolo, Msg.MsgTesto, Msg.MsgNumVis,NumVisMsg.MsgID, NumVisMsg.NumVis FROM (Msg INNER JOIN NumVisMsg ON Msg.MsgID=NumVisMsg.MsgID) WHERE NumVisMsg.UtenteID='test' AND NumVisMsg.NumVis=11/30/2005 ORDER BY Msg.MsgData DESC