16. november 2002 - 03:39Der er
6 kommentarer og 2 løsninger
Dynamisk ORDER BY i SP virker ikke
Hvorfor virker den ikke? Jeg får denne fejlmedelse: "if the SELECT statement contains a UNION operator, the sort columns must appear in the select list"
CREATE PROCEDURE test (@OrderBy int) As
SELECT land, landus FROM land WHERE landid>0 UNION all SELECT land, landus FROM land WHERE landid>0 ORDER BY Case @OrderBy WHEN 1 Then cast(land AS sql_variant) WHEN 2 Then cast(landus AS sql_variant) End GO
execute(' SELECT land, landus FROM land WHERE landid>0 UNION all SELECT land, landus FROM land WHERE landid>0 ORDER BY ' + Case @OrderBy WHEN 1 Then cast(land AS sql_variant) ) WHEN 2 Then cast(landus AS sql_variant) End GO
execute(' SELECT land, landus FROM land WHERE landid>0 UNION all SELECT land, landus FROM land WHERE landid>0 ORDER BY ' + Case @OrderBy WHEN 1 Then cast(land AS sql_variant) WHEN 2 Then cast(landus AS sql_variant) ) End GO
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.