webForumDet fria alternativet

Alltid få en rad

Databaser & SQL

3 svar · 213 visningar · startad av Erik Juhlin

Medlem sedan maj 200010 687 inlägg
Frågan#1

När jag skriver en fråga så vet jag att jag får en eller noll rader. Men istället skulle jag vilja att jag alltid fick två rader men att värdet var NULL om det inte fanns några.
Så här ser SQL:en ut nu:

SELECT IndexLogStartDate FROM tblG_SearchIndexLog WHERE IndexLogSiteId = 6

Jag kan ju skriva så här:

SELECT MAX(IndexLogStartDate) FROM tblG_SearchIndexLog WHERE IndexLogSiteId = 6

Men det känns inte så korrekt. :)

Medlem sedan maj 200010 687 inlägg
#2

Vill ha det så för att jag då inte behöver hämta ett recordset utan kan bara skriva:

bLastStartDate = GetRecordset(sql)(0)
Medlem sedan dec. 200012 464 inlägg
#3

Sql server ?

if not exists (select * from  tblG_SearchIndexLog WHERE IndexLogSiteId = 6 )
select null
else
SELECT IndexLogStartDate FROM tblG_SearchIndexLog WHERE IndexLogSiteId = 6
Medlem sedan maj 200010 687 inlägg
#4

Ha, provade lite och kunde skriva så här:

SELECT (SELECT IndexLogStartDate FROM tblG_SearchIndexLog WHERE IndexLogSiteId = 6)

:)

(Ja, SQL Server som gäller här...)

256 ms totalt · 4 externa anrop · v20260731065814-full.2f471f9e
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)