Avatar billede tdaugaard Nybegynder
01. februar 2001 - 22:31 Der er 6 kommentarer og
1 løsning

SQL: DISTINCT og JOIN ..

Jeg skal have poster fra en tabel hvor tabellens ID=en anden tabels \"questionid\" OG tabellens \"user\" felt = \"noget\".

Problemet er så at der godt kan være flere poster fra tabel nr. 2, men jeg vil kun have unikke poster.

Her er mit SQL query:

SELECT * FROM questions INNER JOIN posts ON questions.id=posts.questionid WHERE posts.user=\'tdaugaard\' AND questions.status=0 ORDER BY questions.date DESC;

hvordan faen får jeg lavet noget DISTINCT på den ?
Avatar billede kasseper Nybegynder
02. februar 2001 - 08:43 #1
Vil det sige at du godt kan have flere poster i posts med samme ID, og user ???
Avatar billede kobojt Nybegynder
02. februar 2001 - 11:14 #2
Hvis du skal have data vist på en side, kan du jo altid bare lave et tjek i din kode, der sprænger de rækker over, hvor \"questionid\" og \"user\" er lig felterne i en af de foregående rækker.

Kobojt
Avatar billede tdaugaard Nybegynder
03. februar 2001 - 16:41 #3
kobojt:> det hjælper ikke, da jeg også har et magen til hvor je bruger SELECT SUM(posts.point) AS point_tjent ...

kasseper:> du kan teste SQL queries på min database (en test en ..) her: http://www.tdaugaard.dk/forum/sqltest/ hvis det er ..

Hvis du skriver det SQL query jeg har skrevet her i spørgmålet så vil du se hvordan det ser ud med ID\'s etc... UNDERLIGT!!
Avatar billede kasseper Nybegynder
05. februar 2001 - 09:26 #4
OK tdaugaard, kan du ikke bare vælge den første record der kommer ud af din søgning, med top 1 ???
Denne returnere kun en record i din søgning :

SELECT top 1 * FROM questions INNER JOIN posts ON questions.id=posts.questionid WHERE posts.user=\'tdaugaard\' AND questions.status=0 ORDER BY questions.date DESC;


Avatar billede tdaugaard Nybegynder
05. februar 2001 - 18:16 #5
kasseper:> som jeg skrev til kobojt:

\"det hjælper ikke, da jeg også har et magen til hvor je bruger SELECT SUM(posts.point) AS point_tjent ...\"

så desværre kan jeg ikke nøjes med TOP 1..
Avatar billede tdaugaard Nybegynder
06. februar 2001 - 10:27 #6
kasseper:> nu har jeg fundet svaret selv :-) (da jeg skiftede til mySQL ..)

SELECT DISTINCT posts.id,questions.* FROM questions INNER JOIN posts ON questions.id=posts.questionid WHERE posts.user=\'tdaugaard\' AND questions.status=0 ORDER BY questions.date DESC;

ellers tak for hjælpen...
Avatar billede tdaugaard Nybegynder
06. februar 2001 - 10:28 #7
Lukker ..
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
Kurser inden for grundlæggende programmering

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