koll i annan databas

ASP

8 svar · 173 visningar · startad av soffan76

Medlem sedan maj 2001684 inlägg
Trådstart#1

Hej gott folk!
Har en knepig fråga...
Hur gör jag om jag vill lista ett antal poster men bara vissa av dem ska visas. Jag vill ta bort de poster som redan finns i en annan tabell.
Alltså om ID-nummret redan finns i en annan tabell ska posten inte visas.
Nån som fattar? Jag kan tyvärr inte förklara tydligare.
Mvh Sofia

Medlem sedan dec. 200012 464 inlägg
#2
select * from tabell1
 where id not in (select id
   from tabell2)
Medlem sedan maj 2001684 inlägg
#3

Tack LarsG! Fast det kruxar lite. Ska det se ut så här?


<% 
Set RS = Server.CreateObject ("ADODB.Recordset") 

SQL = "SELECT * From PA_Projektanmalan WHERE Status LIKE '1' where PA_ID not in (select PA_ID
from PA_Projektregistrering)ORDER BY PA_ID"
SQL2 = "SELECT Count(*) AS antal FROM PA_Projektanmalan WHERE  Status LIKE '1'"
Set RS = Conn.Execute(SQL)
Set RS2 = Conn.Execute(SQL2)
%>

<table>
<tr><td>Dessa resultat överensstämmer med din sökning:</td></tr>
<tr><td>Du sökte på: <b>4</b></td></tr>
<tr><td>Antal träffar: <b><%=RS2("antal")%></b></td></tr>
<tr><td> </td></tr>
</table>
Medlem sedan maj 2001684 inlägg
#4

Så här ser det ut nu men det blir ändå fel, hjälp snälla..


<% 
Set RS = Server.CreateObject ("ADODB.Recordset") 
SQL = "SELECT * From PA_Projektanmalan WHERE Status LIKE '1' AND PA_ID not in (select PA_ID
FROM PA_Projektregistrering) ORDER BY PA_ID"
SQL2 = "SELECT Count(*) AS antal FROM PA_Projektanmalan WHERE  Status LIKE '1' AND PA_ID not in (select PA_ID FROM PA_Projektregistrering)"
Set RS = Conn.Execute(SQL)
Set RS2 = Conn.Execute(SQL2)
%>
Medlem sedan maj 20011 312 inlägg
#5

hur ser felmeddelandet ut och vilken rad pekar den på?

Medlem sedan dec. 200012 464 inlägg
#6

Vad blir fel? Får du inga poster?

Lite fundersam varför du använder like utan att ha något wildcard?

Medlem sedan maj 2001684 inlägg
#7

Jag får upp "Sidan kan inte visas".

...vad är wildcard?

Medlem sedan dec. 200012 464 inlägg
#8

För att få fram det relevanta felmeddelanden så får man ändra inställningar i webläsaren. I internet explorer så finns det under

Tools --> Internet Options --> Advanced

en checkruta där det står

show friendly user messages. Avklicka den och kör om.

Wildcard används i samband med like

% matchar godtyckligt antal tecken
_ matchar 1 godtyckligt tecken

t.ex.

where c like 'a%'

hittar alla poster där första bokstaven i kolumnen c är a.

Har du testat att köra sql-frågorna separat i någon query-analyzer eller så?

Medlem sedan maj 2001684 inlägg
#9

Tack för hjälpen!! Det funkade när jag ändrade inställningarna.
Då fick jag fram ett felmeddelande som sade att det var en radbrytning där det inte fick vara någon.

379 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
118 ms — deklarationer (db)
121 ms — hämta statistik (db)
130 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)