Hallå Utan att tänka efter så kan du använda top 1 tillsammans med order för att kanske lösa detta: Alternativt kan man skriva:Select det näst största närmast under...
Jag vill ha en select sats som väljer det värde närmast under det min kund matat in.
jag har en databas med olika värden, tex:
130
150
180
användaren får efter en beräkning fram ett värde (tak3) som kan vara tex 173,
jag vill då att posten närmast under hämtas, alltså 150.
kan någon hjälpa mig?
min kod
<code>
<%
tak1 = Request.Form("tak")
tak2 = tak1 - 100
tak3 = tak2 * 1.333
Response.Write(tak3)
Set Connect = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
Connect.Open "wiktors-prod1", "sa", "010411"
SQL = "SELECT ? FROM dukTb WHERE duk ? '" & tak3 & "'"
%>
</code>
Tack
ChristoferSv: Select det näst största närmast under...
<code>
select top 1 varde
from tabell
where varde <= 173
order by varde desc
</code>
Det borde ge 130 och 150 eftersom det är mindre än 173, men eftersom de sorteras fallande blir det 150, 130 och eftersom top 1 ger 150 så kanske detta är lösningen.
Jag skrev även mindre och lika med eftersom det kan vara 180 och då måste 180 returneras också.Sv: Select det näst största närmast under...
SELECT Max(varde) As varde
FROM tabell
WHERE varde <= 173
Vet inte vilket som är snabbast. Men jag tror skillnaden är nominell.