Avatar billede ducks Nybegynder
10. juli 2003 - 23:35 Der er 16 kommentarer og
1 løsning

Indviklet SQL string

Hej

Jeg håber i kan forstå hvad jeg mener, jeg har selv svært ved at forklare det og selv forstår jeg det sq ikke helt.

Jeg skal med et ID [Request.QueryString("id")] finde de IDer som matcher i kolonnen "ownid", som er i tabellen "buddy", ud for de ID'er som matcher er der nogle andre ID'er, hvor kolonnen hedder "otherid". Jeg skal så med alle de otherids som er blevet matched, finde de steder i tabellen "brugere" hvor de passer, hvorefter jeg henter "nick" ud, står ud for ID'erne i brugere. Alle de nicks skal så sorteres alfabetisk, hvorefter de skal vises i en <select> box.

Håber i kunne få fat i bare lidt af det, ellers så spørg.
Avatar billede michael_stim Ekspert
10. juli 2003 - 23:43 #1
Hallå, kan du sende et bedre overblik over dine tabeller, prövede at sätte mig ind i dem med hjälp af det du havde skrevet men blev rundtosset.
Avatar billede hossein Nybegynder
10. juli 2003 - 23:47 #2
er buddy.otherID svarer til brugere.ID ?
Avatar billede ducks Nybegynder
10. juli 2003 - 23:47 #3
Er også selv virkelig rundtosset...


brugere
-----------
id | nick
-----------
1  | person1
2  | person2
3  | person3
4  | person4

-----------------------


buddy
------------------
ownid | otherid
------------------
1    | 3
1    | 2
3    | 4


------------------------

Hvis Request.QueryString("id") = 1, skal den finde alle de steder i ownid, hvor der står 1, hvorefter den skal finde de tal ud for nr. 1.
Bagefter skal den finde de tal i tabellen brugere (altså 3 og 2) og sortere dem alfabetisk.

Kan det forstås nu?
Avatar billede ducks Nybegynder
10. juli 2003 - 23:49 #4
Skal lige siges, at jeg åbner mine database sådan her:

Set RS = Server.CreateObject("ADODB.Recordset")
SQL = "Select * FROM TABEL"
RS.Open SQL, Conn, 3, 3

Og såvidt jeg kan forstå, skal det i det her tilfælde gøres på en anden måde. Så jeg vil gerne have mere end bare et kort kode eksempel.
Avatar billede hossein Nybegynder
10. juli 2003 - 23:52 #5
strSQL="select ID, nick from Buddy, brugere where buddy.otherID = brugere.ID and owind = "&request.querystring("ID")&" and otherID = "&request.querystring("ID")&" order by nick"

hvis ID'erne er TAL
Avatar billede ducks Nybegynder
10. juli 2003 - 23:53 #6
de er tal
Avatar billede hossein Nybegynder
10. juli 2003 - 23:54 #7
owind = ownid
Avatar billede hossein Nybegynder
10. juli 2003 - 23:54 #8
så prøv det!
Avatar billede ducks Nybegynder
10. juli 2003 - 23:58 #9
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver] The specified field 'id' could refer to more than one table listed in the FROM clause of your SQL statement.
Avatar billede hossein Nybegynder
11. juli 2003 - 00:01 #10
strSQL="select brugere.ID, nick from Buddy, brugere where buddy.otherID = brugere.ID and otherID = "&request.querystring("ID")&" order by nick"
Avatar billede hossein Nybegynder
11. juli 2003 - 00:03 #11
hehe det skal vær ownID = Re...Query("ID")
strSQL="select brugere.ID, nick from Buddy, brugere where buddy.otherID = brugere.ID and ownID = "&request.querystring("ID")&" order by nick"
Avatar billede michael_stim Ekspert
11. juli 2003 - 00:05 #12
strSQL="select id, nick from Buddy bu, brugere br where bu.otherID = br.id and br.otherID = "&request.querystring("id")&" order by nick"
Avatar billede ducks Nybegynder
11. juli 2003 - 00:07 #13
Takker mange gange....

Du må meget gerne forklare hvad der sker, hvis du vil.

Point?
Avatar billede hossein Nybegynder
11. juli 2003 - 00:13 #14
OK,
id | nick
-----------
1  | person1
2  | person2
3  | person3
4  | person4

-----------------------


buddy
------------------
ownid | otherid
------------------
1    | 3
1    | 2
3    | 4

3,2,4 findes også i brugere tabelen så joiner du buddy.otherID = brugere.ID også sætter du din querystring("1") lige med feltet ownID som indeholder f ex 1 også sortere du efter nick
Avatar billede hossein Nybegynder
11. juli 2003 - 00:20 #15
Var det en god forklaring? :-)
Avatar billede ducks Nybegynder
11. juli 2003 - 00:42 #16
Nej egentlig ikke.. :\
Avatar billede ducks Nybegynder
11. juli 2003 - 00:42 #17
...Eller jo, den er sikkert god nok, men jeg forstår det bare ikke :)
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