webForumDet fria alternativet

Plocka ut alla händelser under denna dag, alla år tillbaka

Databaser & SQL

4 svar · 257 visningar · startad av nkrantz

Medlem sedan apr. 2002830 inlägg
Frågan#1

Hej,

Skulle vilja ha en sql-sats som plockar ut alla rader som inträffat dagens datum, alla år tillbaka.

Testade med: SELECT member_id, date_reg
FROM tbl_member
WHERE 08 = extract(
MONTH FROM date_reg ) AND 15 = extract(
DAY FROM date_reg );

Men den plockade inte ut den händelsen som fanns 2003-08-15. MySQL kör jag, och date_reg är i formatet date

mvh,
Niclas

Medlem sedan dec. 200012 464 inlägg
#2

Det är inget fel på SQL-satsen. (Den fungerar bra i den DBMS sm jag använder.) Kontrollera data en gånh till ;).

Medlem sedan apr. 2002830 inlägg
#3

Funkade inte för mig, istället körde jag med:
SELECT member_id, date_reg
FROM tbl_member
WHERE 08 LIKE extract(
MONTH FROM date_reg ) AND 15 LIKE extract(
DAY FROM date_reg );

Medlem sedan dec. 200012 464 inlägg
#4

Du borde inte behöva använda like (Vilket inte ens skall vara tillåtet i detta sammanhang.) Om du testar

SELECT member_id, date_reg
FROM tbl_member
WHERE 8 = extract(
MONTH FROM date_reg ) AND 15 = extract(
DAY FROM date_reg )

Förmodligen tolkar Mysql 08 som något annat än ett numeriskt värde.

Medlem sedan apr. 2002830 inlägg
#5

Din kod funkade inte, skumt... men det funkar med LIKE, dessutom funkar det att lägga till NOT LIKE 'dagens datum'

/N

291 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
155 ms — hämta tråd, inlägg och bilagor (db)
133 ms — ändringar (db)