在ABAP中,比較SELECT
的WHERE
子句中的字段時可以忽略該情況嗎?在ABAP OpenSQL SELECT中的不區分大小寫比較
SELECT *
FROM some_table
WHERE field1 = variable1.
如何將field1與變量1進行比較而忽略不同情況?
在ABAP中,比較SELECT
的WHERE
子句中的字段時可以忽略該情況嗎?在ABAP OpenSQL SELECT中的不區分大小寫比較
SELECT *
FROM some_table
WHERE field1 = variable1.
如何將field1與變量1進行比較而忽略不同情況?
根據您選擇的表格,您可能很幸運,因爲SAP將相同的值存儲在相關的匹配代碼字段中,其中值始終爲大寫。
否則,您可能會在底層數據庫的文檔中發現允許進行此類搜索的內容,在這種情況下,您可能會發出本機SELECT。
例如,如果您的SAP系統使用Oracle作爲底層數據庫,你可以參考這篇文章:http://www.dba-oracle.com/oracle_news/2005_5_20_great_technique_case_sensitive_text_searching.htm
你不能。打開SQL不支持不區分大小寫的情況。
你既可以做mydoghasworms建議的事情,也可以在數據選擇後使用regex過濾結果。
OpenSQL不能這樣做 - 就像其他人在前面的陳述中提到的那樣。
但是有一個替代方案:本地SQL, 「上」 功能,是指:
translate compare_value to upper case.
exec sql performing addX.
select * FROM INTO :workarea
where upper("choose_column") eq :compare_value
endexec.
form addX.
append workarea to itab.
endform.
謝謝您的球員的幫助。我使用本機SQL作爲我的解決方案。 – lonelyloner