webForumDet fria alternativet

Får inga träffar

11 svar · 338 visningar · startad av WebbisNet

WebbisNetMedlem sedan feb. 20032 027 inlägg
#1

Om jag har ex så här
<select name="alder">
<option value="18-25">
<option value="26-32">
<option value="33-40">
</select>

Hur utformar man sql-satsen för att hitta personer mellan dessa åldrar, har en kolumn med personummer för åldersberäkning

WebbisNetMedlem sedan feb. 20032 027 inlägg
#2

En annan fråga med

När man väljer nåt i en select, hut får man värdet man valde att stanna kvar efter sökningen?

UlfTMedlem sedan maj 20018 027 inlägg
#3

Villkoret skulle kunna vara:

where age > 17 and age < 26 och så vidare. Resten kan du säkert fundera ut själv. :)

WebbisNetMedlem sedan feb. 20032 027 inlägg
#4

UlfT skrev:

Villkoret skulle kunna vara:

where age > 17 and age < 26 och så vidare. Resten kan du säkert fundera ut själv. :)

Har du nåt svar på mitt andra problem med?

UlfTMedlem sedan maj 20018 027 inlägg
#5

Nej, jag förstår inte frågan.

WebbisNetMedlem sedan feb. 20032 027 inlägg
#6

jag har inte en susning om hur man skriver och detta är iaf INTE rätt

<select name="selAge" class="textbox">
<option value="18-28">18-28</option>
<option value="29-39">29-39</option>
<option value="40-50">40-50</option>
<option value="51-62">51-62</option>
<option value="63-70">63-70</option>
</select>

<%set alderRS=objConn.Execute("select persnr from tblUsers")
varAlder=alder(alderRS("persnr"))
set RS = objConn.Execute("Select * From tblUsers where persnr="& varAlder&" between 18 and 28 order by vip = 1 desc")%>

Nån som vet hur man gör?

MeleaMedlem sedan juli 20033 147 inlägg
#7
SELECT 
   (YEAR(CURDATE())-LEFT(persnr,4) - (RIGHT(CURDATE(),5)<SUBSTRING(persnr,6,2)-SUBSTRING(persnr,8,2))) AS age 
FROM 
   tblUsers 
WHERE 
   age > 17 AND age < 26

Funkar nog inte, men om du någon kan visa hur man gör

SUBSTRING(persnr,6,2)-SUBSTRING(persnr,8,2)

Så det räknas som ex. 02-14 så bör det funka.

WebbisNetMedlem sedan feb. 20032 027 inlägg
#8

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[MySQL][ODBC 3.51 Driver][mysqld-4.0.25-max]Unknown column 'age' in 'where clause'

/search/Default.asp, line 360

med den här satsen

set RS = objConn.Execute("SELECT (YEAR(CURDATE())-LEFT(persnr,4) - (RIGHT(CURDATE(),5)<SUBSTRING(persnr,6,2)-SUBSTRING(persnr,8,2))) AS age FROM tblUsers WHERE age > 17 AND age < 26 order by vip = 1 desc")

och om man får detta att funka, hur bygger man ut med fler åldersintervaller???

MeleaMedlem sedan juli 20033 147 inlägg
#9

Enklast är nog om du kör

SELECT 
   (YEAR(CURDATE())-LEFT(persnr,4)) - (RIGHT(CURDATE(),5)<SUBSTRING(persnr,6,2)-SUBSTRING(persnr,8,2)) AS age 
FROM 
   tblUsers

Och hämtar age genom ett recordset och kollar såhär

<select name="selAge" class="textbox">
<option value="18-28"<% if row("age") >= 18 AND row("age") <= 28 then response.write " selected=""selected""" end if %>>18-28</option>
osv...
</select>

Nu var det flera år sedan jag ens kollade på en ASP-kod, så det är inte alls säkert jag har skrivit rätt. :)

WebbisNetMedlem sedan feb. 20032 027 inlägg
#10

Melea skrev:

Enklast är nog om du kör

SELECT 
   (YEAR(CURDATE())-LEFT(persnr,4)) - (RIGHT(CURDATE(),5)<SUBSTRING(persnr,6,2)-SUBSTRING(persnr,8,2)) AS age 
FROM 
   tblUsers

Och hämtar age genom ett recordset och kollar såhär

<select name="selAge" class="textbox">
<option value="18-28"<% if row("age") >= 18 AND row("age") <= 28 then response.write " selected=""selected""" end if %>>18-28</option>
osv...
</select>

Nu var det flera år sedan jag ens kollade på en ASP-kod, så det är inte alls säkert jag har skrivit rätt. :)

Får tyvärr inte ut något resultat :-)

MeleaMedlem sedan juli 20033 147 inlägg
#11

Som sagt, vi får vänta till någon mer kunnig kommer hit och hjälper till, jag har bara gett förslag på hur det skulle kunna gå att bygga upp. Inte alls säkert att SQL-frågan jag skrev funkar. :)

WebbisNetMedlem sedan feb. 20032 027 inlägg
#12

Detta ska funka, men hur kopplar jag mitt rs till selecten så att jag får ut resultat?

<%set RS = objConn.Execute("SELECT ROUND((TO_DAYS(CURDATE()) - TO_DAYS(persnr))/365.25) AS Age FROM tblUsers order by vip = 1 desc")%> 
<select name="selAge" class="textbox"> 
<option value="18-28">18-28</option> 
<option value="29-39">29-39</option> 
<option value="40-50">40-50</option> 
<option value="51-62">51-62</option> 
<option value="63-70">63-70</option> 
</select>
131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)