Avatar billede mnv_dk Praktikant
17. januar 2006 - 13:20 Der er 7 kommentarer og
1 løsning

SELECT på flere tabeller.

Hej,

Lad os antabe jeg har 3 tabeller, med besøgende på en side, tabellerne er en for hver måned, dvs.

2005-10
2005-11
2005-12

I dem har jeg 3 felter ID,ip,time

time er et TIMESTAMP.

Men, nu er tricket at jeg gerne vil finde antal besøgende med IP'en 127.0.0.1 fra '2005-10-15 00:00:00' til '2005-12-15 00:00:00'.
Det smartte ville jo være at undgå at søge i 2005-12 hvis slutdato'en er i November, hvis i kan følge mig.

Er der en query der let kan klare dette?
Avatar billede arne_v Ekspert
17. januar 2006 - 17:09 #1
med en WHERE betingelse får du kun dem du vil have

og med INDEX på feltet vil det gå hurtigt
Avatar billede mnv_dk Praktikant
17. januar 2006 - 18:02 #2
Ja, det er jeg godt klar over, men vil mdu køre 3 queries, en fra hver tabel? Har kigget lidt på union, ser ud til det kunne bruges, bortset fra at du så vil gå ind i alle tabeller og søge.
Avatar billede arne_v Ekspert
17. januar 2006 - 19:00 #3
ah - nu fik jeg læst dit sprøgsmål korrekt

forkert tabelstruktur ! data skulle have været i en enkelt tabel !

enten må du lave union på dem alle 3 eller så skal din applikation
analysere periode og hente fra de rigtige tabeller (lidt bøvlet kode)
Avatar billede mnv_dk Praktikant
17. januar 2006 - 19:08 #4
Ja, det var netop også min konklusion, men jeg hælder nok mest til den sidste.
Avatar billede mnv_dk Praktikant
18. januar 2006 - 15:04 #5
Well, fik lavet et proof of concept script: http://test.gw1.befree.dk/UnionExample.php
Eneste forskel er at nuværende måned i nuværende år, hedder tabellen gateway.
Avatar billede arne_v Ekspert
12. marts 2006 - 05:36 #6
Tid at få afsluttet dette spørgsmål ?
Avatar billede mnv_dk Praktikant
12. april 2006 - 10:51 #7
arne_v: Ja... Men det kræver jo du lægger et svar ;)
Avatar billede arne_v Ekspert
12. april 2006 - 12:35 #8
kommer her
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester