Jeg vil gerne lave en query, der henter oplysninger tre steder fra:
rbb_postits, rbb_user_archive og rbb_tabs
Min query skal finde alle rækker i rbb_user_archive, som har feltet 'post_id' til fælles med feltet 'id' fra rbb_postits og hente feltet 'name' fra rbb_tabs, hvor 'id' matcher 'tab' fra rbb_postits... Forvirret? Det er jeg også:
rbb_postits:
- id | replyto | author | title | content | tab | assession_date
- 93 | 0 | 1 | test | [...] | 2 | 2013-01-29 16:57:14
- 96 | 0 | 1 | test2 | [...] | 1 | 2013-01-30 18:06:42
rbb_user_archive:
- user_id | post_id
- 1 | 93
- 1 | 96
rbb_tabs:
- id | name
- 1 | Main
- 2 | Tests
Min query:
- SELECT p.tab, t.name AS tabname, a.post_id, p.id AS postid, a.user_id, p.title
- FROM rbb_postits p, rbb_user_archive a, rbb_tabs t
- WHERE p.tab = t.id
- AND EXISTS
- (
- SELECT 1
- FROM rbb_user_archive a
- WHERE a.post_id = p.id
- AND a.user_id = '1'
- )
- ORDER BY p.assession_date DESC
Ovenstående returnerer:
- tab | tabname | post_id | postid | user_id | title
- 1 | Main | 96 | 96 | 1 | test2
- 1 | Main | 93 | 96 | 1 | test2
- 2 | Tests | 96 | 93 | 1 | test
- 2 | Tests | 93 | 93 | 1 | test
Men jeg vil gerne have et resultat, der ligner:
- tab | tabname | postid | user_id | title
- 1 | Main | 93 | 1 | test
- 2 | Tests | 96 | 1 | test2
Hjælp?
Indlæg senest redigeret d. 01.02.2013 09:56 af Bruger #16927