Có thể giải thích sự khác biệt giữa chức năng concat()
và toán tử ||
trong Oracle không?Sự khác nhau giữa "||" là gì toán tử và hàm concat trong Oracle?
Điều nào tốt hơn về hiệu suất?
Có thể giải thích sự khác biệt giữa chức năng concat()
và toán tử ||
trong Oracle không?Sự khác nhau giữa "||" là gì toán tử và hàm concat trong Oracle?
Điều nào tốt hơn về hiệu suất?
Không có sự khác biệt về chức năng.
||
là toán tử nối chuỗi chuẩn ANSI (mặc dù, thật không may, không phải mọi cơ sở dữ liệu <cough>SQL Server</cough>
đều chọn hỗ trợ chuẩn). Nhiều cơ sở dữ liệu hỗ trợ chức năng CONCAT
để có thể dễ dàng chuyển mã bằng cách sử dụng CONCAT
đến các cơ sở dữ liệu khác nhau.
Chức năng 'concat' chỉ có thể hoạt động trên 2 biến hoặc cột, trong khi hoạt động 'concat' có thể được thực hiện cho bất kỳ số lượng biến hoặc cột nào.
Trên Oracle, [điều này đúng] (http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions026.htm). – NReilingh
CONCAT sẽ nhận được nhiều đầu vào như bạn muốn trong MySql. –
Tôi chỉ biết hai DBMS không tuân thủ tiêu chuẩn SQL: SQL Server và MySQL. Và MySQL ít nhất có thể được cấu hình để chấp nhận '||' làm toán tử nối. –
+1 cho các thẻ một mình :-) –
DCookie
Oh đến trên máy chủ SQL có một toán tử tương đương '+' giống như [hỗ trợ một phần của oracle của các hàm chuẩn ANSI] (http://docs.oracle.com/cd/ B19306_01/server.102/b14200/ap_standard_sql003.htm # sthref10080) Các hàm CHARACTER_LENGTH, OCTET_LENGTH, SUBSTRING hoặc POSITION. –