it;s normal that you don;t have any value shown for "If(CategoryName = ' ' ,(SubField(CategoryName,' ',2), CategoryName)"
this is what you have:
Apple red = red
Sky blue = blue
Yellow = yellow
Pink = pink.
there is no word after the blank space for yellow and pink. you want a value to be returned you have to use subfield(CategoryName,' ') and will get you Yellow and Pink
May be try this
SubField(' ' & Category, ' ', -1) as Color
SubField(' ' & Category, ' ', -1) as Color;
LOAD * INLINE [
298125.qvw 146.0 K