Avatar billede henrik_m Nybegynder
28. maj 2002 - 21:38 Der er 20 kommentarer og
1 løsning

2 forespørgsler i en?

Udfordringen består i at jeg skal have flettet 2 forespørgsler sammen.
1. Først skal jeg have det seneste KID fra tabellen konkurrence
2. Derefter skal jeg tælle de kunder med dette KID

Det må kunne gøres meget enkelt men jeg kan bare ikke se skoven for bare træer?

Håber nogen kan hjælpe

Henrik

Koden vist nedenfor
<%
response.expires = 0

' 1 aktuel konkurrence
Set aConn = Server.CreateObject("ADODB.Connection")
aConn.Open Application("nh_kunder")
sql = "SELECT TOP 1 * FROM konkurrence ORDER BY kid desc"
set svar = aconn.execute(sql)
test = svar("kid")
response.write test


'  2 tæl deltagere som har deltaget i den aktuelle konkurrence
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open Application("nh_kunder")
Sqlstmt2 = "SELECT COUNT(id) AS antal FROM countk where kid= test???????????'"
conn.Execute (SQLstmt2)
Set rs2 = conn.Execute(SQLstmt2)

%>
<%=rs2("Antal")%>
<%

aconn.Close
Set aconn = Nothing
set sql = nothing

conn.Close
Set conn = nothing
Set SQLstmt2 = nothing
%>

Avatar billede medions Nybegynder
28. maj 2002 - 21:50 #1
<%
response.expires = 0

' 1 aktuel konkurrence
Set aConn = Server.CreateObject("ADODB.Connection")
aConn.Open Application("nh_kunder")
sql = "SELECT TOP 1 * FROM konkurrence ORDER BY kid desc"
set svar = aconn.execute(sql)
test = svar("kid")
response.write test


'  2 tæl deltagere som har deltaget i den aktuelle konkurrence
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open Application("nh_kunder")
Sqlstmt2 = "SELECT COUNT(id) AS antal FROM countk where kid=" & test
conn.Execute (SQLstmt2)
Set rs2 = conn.Execute(SQLstmt2)

%>
<%=rs2("Antal")%>
<%

aconn.Close
Set aconn = Nothing
set sql = nothing

conn.Close
Set conn = nothing
Set SQLstmt2 = nothing
%>

//>Rune
Avatar billede medions Nybegynder
28. maj 2002 - 21:51 #2
<%
response.expires = 0

' 1 aktuel konkurrence
Set aConn = Server.CreateObject("ADODB.Connection")
aConn.Open Application("nh_kunder")
sql = "SELECT TOP 1 * FROM konkurrence ORDER BY kid desc"
set svar = aconn.execute(sql)
test = svar("kid")
response.write test


'  2 tæl deltagere som har deltaget i den aktuelle konkurrence
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open Application("nh_kunder")
Sqlstmt2 = "SELECT COUNT(*) AS antal FROM countk where kid=" & test
conn.Execute (SQLstmt2)
Set rs2 = conn.Execute(SQLstmt2)

%>
<%=rs2("Antal")%>
<%

aconn.Close
Set aconn = Nothing
set sql = nothing

conn.Close
Set conn = nothing
Set SQLstmt2 = nothing
%>

eller sådan!
//>Rune
Avatar billede medions Nybegynder
28. maj 2002 - 21:54 #3
Hmm.. jeg syntes du har rodet lidt i koden... -her er den, lidt mindre rodet!


<%
response.expires = 0

' 1 aktuel konkurrence
Set aConn = Server.CreateObject("ADODB.Connection")
aConn.Open Application("nh_kunder")
sql = "SELECT TOP 1 * FROM konkurrence ORDER BY kid desc"
set svar = aconn.execute(sql)
test = svar("kid")
response.write test


'  2 tæl deltagere som har deltaget i den aktuelle konkurrence
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open Application("nh_kunder")
Sqlstmt2 = "SELECT COUNT(*) AS antal FROM countk where kid=" & test
Set rs2 = conn.Execute(SQLstmt2)
%>
<%=rs2("Antal")%>
<%

aconn.Close
Set aconn = Nothing
set sql = nothing

conn.Close
Set conn = nothing
Set SQLstmt2 = nothing
%>

//>Rune
Avatar billede tmceu Praktikant
28. maj 2002 - 22:02 #4
Hvorfor ikke bare dette ene SQL statement:

SELECT COUNT(*) AS antal FROM countk where kid=(SELECT TOP 1 kid FROM konkurrence ORDER BY kid desc)
Avatar billede tmceu Praktikant
28. maj 2002 - 22:03 #5
Dermed kan du fjerne hele den første kodeblok og kun tilgå databasen én gang :-)
Avatar billede henrik_m Nybegynder
28. maj 2002 - 22:04 #6
Klasse
Avatar billede medions Nybegynder
28. maj 2002 - 22:04 #7
tmceu> ?? Kan man godt det??

//>Rune
Avatar billede medions Nybegynder
28. maj 2002 - 22:04 #8
Thx 4 Poinz
//>Rune
Avatar billede tmceu Praktikant
28. maj 2002 - 22:08 #9
Rune >> ja, hvis man anvender stort set alle andre databaser end MySQL, som endnu ikke supporterer subselects
Avatar billede medions Nybegynder
28. maj 2002 - 22:10 #10
tmceu> så er det nok derfor jeg ik' kender den... -jeg arbejder kun med MySQL ;-)

Men tak for tippet.. -det kommer man jo nok til at skulle bruge en eller anden dag...!

//>Rune
Avatar billede henrik_m Nybegynder
28. maj 2002 - 22:11 #11
Smart med kun at tilgå db en gang! jeg så den ikke før jeg havde givet point, men tak for hjælpen begge to
Avatar billede tmceu Praktikant
28. maj 2002 - 22:12 #12
Ja, sådan går det. Man svarer præcist på det der spørges om og pointene går alligevel til et andet svar :-) Hvordan er det nu den Shu-bi-dua sang er med "jeg stod i kø på livets vej, mens alle andre overhaled' mig..." :-D (Den Røde Tråd)
Avatar billede medions Nybegynder
28. maj 2002 - 22:14 #13
tmceu> *LOL* utroligt ok Shu-bi-dua er danske... det her må jo ligge til os at fejle på denne måde.. ;-)

//>Rune
Avatar billede tmceu Praktikant
28. maj 2002 - 22:27 #14
Rune >> der har længe været planer om at indføre subselects i MySQL, ved ikke om de stadig planlægger det til ver. 4.1 ? Når de så også smider stored procedures og triggers med, er det en rigtig database. Begge sidstnævnte er dog desværre udskudt fra ver. 4.1 til "engang".
Avatar billede medions Nybegynder
28. maj 2002 - 23:00 #15
tmceu> Ok.. well, jeg må jo nok give dig ret i at det er dejlig at kunne benytte sig af subselects!!

Jeg ville lige hører om du kendte noget til Sun Chili!Soft ASP til Windows, for jeg sidder og spikolere om dette kunne betale sig at installere!
Har du evt. ICQ / Messenger så vi ikke spammer hans spm!

//>Rune
Avatar billede tmceu Praktikant
28. maj 2002 - 23:08 #16
Desværre kun AOL Instant Messenger, men du tænker sikkert på MSN ?

Well, spørgsmålet er reelt besvaret, så det gør vel ikke så meget :-)

Jeg kender en smule til det, men jeg har en ret firkantet holdning til det. Der er kun én implementering af ASP og det er IIS. både ovennævnte og Apache::ASP er ikke rigtige implementeringer i min verden. Der er mange småting som jeg ikke mener fungerer ordentligt og så er det altså Microsoft der sætter dagsordenen med IIS.
Avatar billede medions Nybegynder
28. maj 2002 - 23:14 #17
Okay *G*

Hmm... det er bare fordi jeg køber en server her om ikke så lang tid, og vil gerne prøve så vidt muligt at køre en gratis version af ASP, altså om det var en mulighed at køre det gratis! Det jeg tænker lidt på nu er hvilke ting har de andre ikke med som IIS har med, og er der noget med hurtigheden osv.

Hvordan kan det være du hverken har MSN eller ICQ?

//>Rune
Avatar billede tmceu Praktikant
28. maj 2002 - 23:28 #18
Til sidstnævnte: Fordi jeg primært kommuniker via messenger med venner/bekendte i USA.

Nu skal det retfærdigvis siges, at jeg sidst sammenlignede lige da IIS 5 var kommet ud. Som jeg husker det, er det ting som ikke fuld implementation af VBScript 5.5, sikkerhed og hastighed.

Og så er den jo ikke ligefrem gratis, den koster vist omkring 500$. Hvis du vil køre gratis, vil jeg istedet anbefale Apache::ASP http://www.apache-asp.org/

Men du burde måske overveje at skifte til JSP el. PHP, hvis du hælder mere til gratis/open source verdenen. Især JSP er vil være nemt at lære for dig, når du kan ASP i forvejen.
Avatar billede medions Nybegynder
28. maj 2002 - 23:33 #19
Jamen er JSP da gratis? -jeg trode at det oxo kørte på IIS!
Nu kender jeg kun til ASP-VBScript, dog oxo meget godt, men jeg kender intet til ASP-Perl! Hvordan er sammenligningen med dem, og hvordan er ASP-Perl i forhold til ASP-VBScript, er der nogen ulemper ved at kører ASP-Perl, og hvorfor er det ikke lige så udbredt som ASP-VBScript...?

Kunne du ikke tænke dig at installere ICQ / MSN :-)
//>Rune
Avatar billede tmceu Praktikant
28. maj 2002 - 23:44 #20
Øjeblik, jeg har engang haft ICQ installeret (brugte også engang MSN, men gad ikke ha' 3 messengers). Jeg vil lige som jeg kan finde mit ICQ#. Smid dit i mellemtiden, så kontakter jeg dig...
Avatar billede medions Nybegynder
28. maj 2002 - 23:47 #21
96272063

//>Rune
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