Trong Oracle, SIN() hàm trả về sin của đối số của nó, trong đó đối số là một góc được biểu thị bằng radian.
Cú pháp
Cú pháp như sau:
SIN(n)
Ở đâu n là một góc tính bằng radian. Nó có thể là bất kỳ kiểu dữ liệu số hoặc bất kỳ kiểu dữ liệu phi số nào có thể được chuyển đổi hoàn toàn sang kiểu dữ liệu số.
Ví dụ
Đây là một ví dụ:
SELECT SIN(0.7130)
FROM DUAL; Kết quả:
SIN(0.7130) ____________________________________________ 0.654105919987111640837086056815766614855
Đối số không phải là số
Như đã đề cập, đối số có thể là bất kỳ kiểu dữ liệu số hoặc bất kỳ kiểu dữ liệu không phải số nào có thể được chuyển đổi hoàn toàn sang kiểu dữ liệu số.
Đây là những gì sẽ xảy ra khi chúng tôi cung cấp đối số không phải là số không thể chuyển đổi thành kiểu dữ liệu số:
SELECT SIN('One')
FROM DUAL; Kết quả:
Error starting at line : 1 in command -
SELECT SIN('One')
FROM DUAL
Error report -
ORA-01722: invalid number Giá trị rỗng
Chuyển null thành SIN() trả về null :
SET NULL 'null';
SELECT SIN(null)
FROM DUAL; Kết quả:
SIN(NULL)
____________
null
Theo mặc định, SQLcl và SQL * Plus trả về một khoảng trống bất cứ khi nào null xảy ra do một SELECT trong SQL tuyên bố.
Tuy nhiên, bạn có thể sử dụng SET NULL để chỉ định một chuỗi khác được trả về. Ở đây tôi đã chỉ định rằng chuỗi null nên được trả lại.
Số lượng đối số không chính xác
Gọi SIN() mà không chuyển bất kỳ đối số nào sẽ trả về lỗi:
SELECT SIN()
FROM DUAL; Kết quả:
Error starting at line : 1 in command - SELECT SIN() FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action:
Và việc chuyển sai số đối số dẫn đến lỗi:
SELECT SIN(1, 2)
FROM DUAL; Kết quả:
Error starting at line : 1 in command - SELECT SIN(1, 2) FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action: