Avatar billede neonman Nybegynder
28. marts 2006 - 15:46 Der er 6 kommentarer og
2 løsninger

Besteme udtræk i counts

Sider og skal ha fixet lidt SQL udtræk.

men nu har jeg et lille problem det er at jeg har en database med en masse data i underligt nok :) men ja har timestamp på alle mine input felter og skal ha fixet et bestemt udtræk ud. har også kundeid og land tag har følge ting i min table som jeg skal ha trukket ud bestemt.

table: besog_log

- felter
countrynick <- Lands kode fx. DK
runtime <- Hvornår bruger har lavet et sidevisning
ipadresse <- Hvad ipadresse brugeren er fra

det jeg nu skal skal er at jeg skal finde ud af hvormange fra ( countrynick ) der har en unik ( ipadresse ) mellem hvert døgn som f.eks. idag er ( runtime  = 1143496800 ) og skal så fra trække et døgn hver enste gang den er done med det første døgn

kan i følge mig eller taler jeg helt sort?

håber nogen kan følge mig og hjælpe mig har prøvet utallie steder snart og har moslet med det hele dagen idag faktisk.
Avatar billede arne_v Ekspert
29. marts 2006 - 04:12 #1
måske noget a la

SELECT countrynick,DATE(runtime),COUNT(DISTINCT ipaddress)
FROM besog_log
GROUP BY countrynick,DATE(runtime)

evt. med noget ORDER BY til at styre rækkefølgen
Avatar billede neonman Nybegynder
29. marts 2006 - 08:14 #2
Takker jeg vil lige prøve det :) og ja det ser nu meget rigtig ud husk at jeg køre MySQL 4.11 eller hvad den version nu hedere... så ja ved ik om det der kun er en MySQL 5 komando :p men ser ik sådan ud
Avatar billede neonman Nybegynder
29. marts 2006 - 08:22 #3
Har kikket lidt på det nu enligt :) hvad jeg kan finde fram til bruges DATE() i SQL hvis jeh har en yyyy-mm-dd hh:ii:ss og har jo mit timestamp og så funger det ikke helt hvad jeg kan se ? kan det ikke la sig gøre at convertere fra timestamp til normal date ?
Avatar billede neonman Nybegynder
29. marts 2006 - 08:45 #4
har prøvet det med dette lige pt

SELECT countrynick, COUNT(DISTINCT ipadresse) AS Count FROM besog_log WHERE kundeid = '$UserID' GROUP BY countrynick, DATE_FORMAT(runtime, '%Y-%m-%d') ORDER BY Count DESC

det funger stort set også der er dog bare ldit endnu. Den tager kun min count med 1gang så det er ldit øv.
Avatar billede neonman Nybegynder
29. marts 2006 - 09:21 #5
post fra englsk forum hvor jeg har postet :)

Now i hav this code

Code:
SELECT countrynick, COUNT(DISTINCT ipadresse) AS Count, FROM_UNIXTIME(runtime, '%Y-%m-%d') AS DateNow FROM besog_log WHERE kundeid = '6' GROUP BY countrynick, FROM_UNIXTIME(runtime, '%Y-%m-%d') ORDER BY Count DESC


bot is return this dato to me

countrynick Count DateNow
DK - 21 - 2006-03-28
XX - 4 - 2006-03-28
DK - 1 - 2006-03-29
US - 1 - 2006-03-28
BG - 1 - 2006-03-28

i will hav it to look like follow

countrynick Count
DK - 22
XX - 4
US - 1
BG - 1

håber i kan forstå det ellers sig til :)
Avatar billede neonman Nybegynder
29. marts 2006 - 12:36 #6
Pyt har fået mit problem løst gjore det på en lidt emre besværlig måde. men tak for hjælpen kast et svar dit var del vis rigtig så du får 50% af pointen :)
Avatar billede arne_v Ekspert
29. marts 2006 - 13:20 #7
ok

hvordan kom den til at se ud ?
Avatar billede neonman Nybegynder
30. marts 2006 - 09:35 #8
Det blev for tricki...

så postet det ind i en anden table og trank det ud den vej :) så det var lidt en nød løsning fra min side... men hade ikke tid til at finde ud af det på andre måde i denne omgang :(
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