Avatar billede axkris Nybegynder
13. juni 2005 - 00:20 Der er 6 kommentarer og
1 løsning

Optimere sql-kode

Hej alle

Hvordan kan denne kode optimeres, herunder lægges sammen i en sql-sætning?

strSQL = "SELECT FORUM_FORUM.FORUM_ID FROM FORUM_FORUM INNER JOIN FORUM_CATEGORY ON FORUM_FORUM.CAT_ID = FORUM_CATEGORY.CAT_ID INNER JOIN FORUM_GROUPS ON FORUM_CATEGORY.CAT_ID = FORUM_GROUPS.GROUP_CATID WHERE FORUM_GROUPS.GROUP_ID = 4"
set rs = my_Conn.Execute(strSql)   
  while not (rs.eof or rs.bof)
  strSQL = "INSERT INTO " & strTablePrefix & "MODERATOR (FORUM_ID, MEMBER_ID) VALUES(" & RS("FORUM_ID") & ", " & cLng(Request.Form("MEMBER_ID")) & ")"
  my_Conn.Execute (strSql),,adCmdText + adExecuteNoRecords
  rs.movenext
wend
set rs = nothing
Avatar billede arne_v Ekspert
13. juni 2005 - 00:46 #1
det tror jeg

prøv:

strSQL = "INSERT INTO " & strTablePrefix & "MODERATOR (FORUM_ID, MEMBER_ID) SELECT FORUM_FORUM.FORUM_ID," & cLng(Request.Form("MEMBER_ID")) & " FROM FORUM_FORUM INNER JOIN FORUM_CATEGORY ON FORUM_FORUM.CAT_ID = FORUM_CATEGORY.CAT_ID INNER JOIN FORUM_GROUPS ON FORUM_CATEGORY.CAT_ID = FORUM_GROUPS.GROUP_CATID WHERE FORUM_GROUPS.GROUP_ID = 4"
Avatar billede axkris Nybegynder
15. juni 2005 - 20:58 #2
Takker - det virker - tryk svar :-)

Kan du også hjælpe mig med at lave en delete-sætning, som sletter de selvsamme records, som insert-sætningen laver?
Avatar billede arne_v Ekspert
15. juni 2005 - 21:17 #3
svar
Avatar billede arne_v Ekspert
15. juni 2005 - 21:19 #4
DELETE FROM xxxxx WHERE forum_id IN (SELECT ...) AND member_id IN (SELECT ...)

måske
Avatar billede axkris Nybegynder
16. juni 2005 - 16:19 #5
Hymm...

The column prefix 'FORUM_FORUM' does not match with a table name or alias name used in the query.

strSQL = "DELETE FROM " & strTablePrefix & "MODERATOR WHERE FORUM_ID IN (SELECT FORUM_FORUM.FORUM_ID WHERE FORUM_GROUPS.GROUP_ID = 4) AND MEMBER_ID IN (SELECT FORUM_FORUM.FORUM_ID," & cLng(Request.Form("MEMBER_ID")) & ")"
Avatar billede arne_v Ekspert
23. juni 2005 - 10:45 #6
De SELECT du laver mangler da vist FROM m.v.
Avatar billede axkris Nybegynder
06. august 2005 - 13:23 #7
Takker
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