Mijn vraag:
Tabel Uitslag heeft een veld Uitslagwaarde die gedefinieerd staat als nvarchar(20) vanwege dat er tekst als uitslagen met dubbele precisie in staat.
In de query heb ik de uitslag al op decimal gezet, maar nu komt het.
Ik moet een vergelijking doen
- de uitslag < 50 en ouder dan 10 jaar is
- de uitslag < 150 en jonger dan 11 jaar is
Dit lukt mij nog niet.
De query:
Tabel Uitslag heeft een veld Uitslagwaarde die gedefinieerd staat als nvarchar(20) vanwege dat er tekst als uitslagen met dubbele precisie in staat.
In de query heb ik de uitslag al op decimal gezet, maar nu komt het.
Ik moet een vergelijking doen
- de uitslag < 50 en ouder dan 10 jaar is
- de uitslag < 150 en jonger dan 11 jaar is
Dit lukt mij nog niet.
De query:
SQL:
1
2
3
4
5
6
7
8
9
| SELECT U.MonsterNummer, U.TestCode, A.PrikDatum, CASE WHEN isNumeric(U.UitslagWaarde) <> 0 THEN CONVERT(decimal(10, 2), CONVERT(nvarchar(20), REPLACE(U.UitslagWaarde, ',', '.'))) ELSE U.UitslagWaarde END AS Uitslag, A.PatientGebDat,DATEDIFF(hour,A.PatientGebDat,GETDATE())/8766 AS Leeftijd FROM Uitslag AS U INNER JOIN Aanvraag AS A ON A.MonsterNummer = U.MonsterNummer WHERE (U.MonsterNummer = '100029214195') AND (U.TestCode = 'ige') |
[ Voor 0% gewijzigd door RobIII op 05-03-2020 13:10 . Reden: Code tags toegevoegd ]