第二十章 SQL谓词 %STARTSWITH(二)
首尾空格
在大多数情况下,%STARTSWITH将前导空格视为与任何其他字符相同的字符。
例如,%STARTSWITH ' B'可用于选择只有一个前导空白后跟字母B的字段值。然而,只包含空白的子字符串不能选择前导空白;
它选择非空值。
尾随空格的%STARTSWITH行为取决于数据类型和排序规则类型。
%STARTSWITH忽略定义为SQLUPPER的字符串子串的尾随空格。
%STARTSWITH不会忽略数字、日期或列表子字符串中的尾随空格。
在下面的示例中,%STARTSWITH将结果集限制为以“M”开头的名称。
因为Name是一个SQLUPPER字符串数据类型,子字符串的末尾空格将被忽略:
SELECT Name FROM Sample.Person
WHERE Name %STARTSWITH 'M '
在下面的示例中,%STARTSWITH从结果集中删除所有行,因为对于数值,子字符串的末尾空格不会被忽略:
SELECT Name,Age FROM Sample.Person
WHERE Age %STARTSWITH '6 '
在下面的示例中,%STARTSWITH从结果集中删除所有行,因为对于列表值,子字符串中的末尾空不会被忽略:
SELECT Name,FavoriteColors FROM Sample.

