0
내가하려고하는 것은 테이블의 두 필드를 연결하여 연결된 필드의 내림차순 길이로 정렬하고 내가 cut_vinyl
select @ variable = case when ... end from ... order by len (@variable)
board_name | base_color | shade_color ===================================== board0001 | clear | NULL board0002 | clear | blue board0003 | bronze | bronze board0004 | bronze | green board0005 | bronze | blue board0006 | bronze | NULL
다음 표이 있다면, 그래서 ... 여기
내가 시도하고이를 달성하기 위해 사용하고는 SQL의 ...declare @color nvarchar(255);
declare @board_name nvarchar(255);
select top(1)
@board_name = board_name,
@color = base_color + case when shade_color is null then '' else '/' + shade_color end
from
cut_vinyl
order by
len(@color) desc;
select @board_name, @color;
을 상단 결과를 얻을 수 그러면 나는 기대할 것이다. @board_name
이 청동/청동, 아직 내가 대신 받고있는 것으로 보인다 수 board0003 및 @color
될 것은 @board_name
= board0001 및 @color
= 같은 결과 명확
위의 표에서 볼 수 있듯이 예상 한 결과는 ** board0003 ** 만 반환해야합니다. 가장 긴'base_color' 만 필요하지는 않습니다. 가장 긴'base_color + '/'+ shade_color'가 필요합니다. –
'shade_color' 길이로 주문하는 것이 맞습니다. 나는 대답을 편집했다. – Andomar
그게 효과가 있습니다 ... 나는 결코 그것을 시도하는 것을 믿을 수 없습니다. –