Xem Tài liệu Oracle về nghĩa đen :
và tài liệu về ngữ nghĩa so sánh có đệm trống trạng thái:
Vì phía bên trái của phép so sánh là CHAR(10)
và phía bên tay phải là một ký tự văn bản sau đó sử dụng ngữ nghĩa so sánh có đệm trống và 'hello ' = 'hello'
là đúng.
Bạn có thể thấy điều này trong ví dụ đơn giản:
SELECT * FROM DUAL WHERE 'hello ' = 'hello';
Cập nhật :
[TL; DR] Hành vi này đã xuất hiện trong tất cả các phiên bản của Oracle kể từ ít nhất là Oracle 7 (phát hành năm 1992). Tôi đã ngừng tìm kiếm tài liệu về các bản phát hành hơn hai thập kỷ nhưng tôi hy vọng rằng bạn sẽ thấy rằng đây là hành vi trong hầu hết (tất cả?) Phiên bản.
Đây là tài liệu cho các phiên bản khác nhau:
- Oracle 12c Text Literals & ngữ nghĩa đệm trống
- Oracle 11g Text Literals & ngữ nghĩa đệm trống
- Oracle 10gR2 Text Literals & ngữ nghĩa đệm trống
- Oracle 9 Text Literals & ngữ nghĩa được đệm trống
- Oracle 8 Text Literals & ngữ nghĩa được đệm trống
- Oracle 7 Text Literals