Avatar billede onkel_satan Nybegynder
05. februar 2003 - 13:25 Der er 8 kommentarer og
1 løsning

Udtraek ??

Er ved at lave database/tabel til eet forum.
tabellen ser saaledes ud:
+---------+
| Field  |
+---------+
| id      |
| user    |
| date    |
| ip      |
| topic  |
| message |
+---------+
Jeg vil saa lave et udtraek der grouper topic og giver mig den user med den lavste dato.
Kan i hjælpe med det ?
Avatar billede mufoxe Nybegynder
05. februar 2003 - 13:29 #1
SELECT user
FROM tabel
ORDER BY topic, date ASC
LIMIT 0,1
Avatar billede onkel_satan Nybegynder
05. februar 2003 - 13:55 #2
hmmm.... maaske har jeg ikke udtrukt mig ordenligt.
Jeg kan lave denne her:
mysql> SELECT topic, user, MIN(date) AS start_dato, COUNT(*) AS antal_indlaeg FROM forum GROUP BY topic;
+-------+------+---------------------+---------------+
| topic | user | start_dato          | antal_indlaeg |
+-------+------+---------------------+---------------+
| n-tss | jan  | 2003-02-05 12:56:38 |            2 |
| test  | jan  | 2003-02-05 12:57:07 |            2 |
+-------+------+---------------------+---------------+
Dette er hvad jeg skal bruge, men det eneste problem er bare at den ikke giver mig den user med den lavste dato. I dette tilfaelde er det user "james" der har tiden 12:56:38
+-------+---------------------+
| user  | date                |
+-------+---------------------+
| jan  | 2003-02-05 12:56:56 |
| james | 2003-02-05 12:56:38 |
| jan  | 2003-02-05 12:57:07 |
| james | 2003-02-05 12:57:15 |
+-------+---------------------+

haaber du kan se hvad jeg mener.
Avatar billede mufoxe Nybegynder
05. februar 2003 - 14:00 #3
smid en ORDER BY date på ... LIMIT 0,1, hvis du kun vil have en bruger.
Avatar billede mufoxe Nybegynder
05. februar 2003 - 14:01 #4
eller start_dato, som den hedder :)
Avatar billede onkel_satan Nybegynder
05. februar 2003 - 14:06 #5
order by start_dato giver det samme resultat. det jeg gerne skulle naa frem til er:
+-------+------+---------------------+---------------+
| topic | user | start_dato          | antal_indlaeg |
+-------+------+---------------------+---------------+
| n-tss | james| 2003-02-05 12:56:38 |            2  |
| test  | jan  | 2003-02-05 12:57:07 |            2  |
+-------+------+---------------------+---------------+

istedet for:
+-------+------+---------------------+---------------+
| topic | user | start_dato          | antal_indlaeg |
+-------+------+---------------------+---------------+
| n-tss | jan  | 2003-02-05 12:56:38 |            2 |
| test  | jan  | 2003-02-05 12:57:07 |            2 |
+-------+------+---------------------+---------------+
Avatar billede onkel_satan Nybegynder
05. februar 2003 - 14:08 #6
fordi james har den "mindste" dato paa topic n-tss og jan har den mindste dato paa topic test.
Avatar billede mufoxe Nybegynder
05. februar 2003 - 14:52 #7
Beskrive lige alle de relevante tabeller.
Avatar billede onkel_satan Nybegynder
06. februar 2003 - 12:42 #8
Dette er den eneste tabel:
+---------+--------------+
| Field  | Type        |
+---------+--------------+
| id      | int(11)      |
| user    | varchar(100) |
| date    | datetime    |
| ip      | varchar(15)  |
| topic  | varchar(200) |
| message | text        |
+---------+--------------+
ps. udskyld jeg smuttede igaar... men der opstod lige en haste situation.
Avatar billede onkel_satan Nybegynder
06. februar 2003 - 16:57 #9
Tror lige jeg maa proeve for fra.
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