Comparison of common functions of SQL Server and Oracle

Source: Internet
Author: User
Tags time zones mathematical functions

--------- Mathematical functions

1. Absolute Value
S: Select ABS (-1) Value
O: Select ABS (-1) value from dual

2. INTEGER (large)
S: Select ceiling (-1.001) Value
O: Select Ceil (-1.001) value from dual

3. Round (small)
S: Select floor (-1.001) Value
O: Select floor (-1.001) value from dual

4. Round (truncation)
S: Select cast (-1.002 as INT) Value
O: Select trunc (-1.002) value from dual

5. Rounding
S: Select round (1.23456, 4) value 1.23460
O: Select round (1.23456, 4) value from dual 1.2346

6. e is the base power
S: Select exp (1) Value 2.7182818284590451
O: Select exp (1) value from dual 2.71828182

7. Take the base logarithm of E.
S: Select log (1, 2.7182818284590451) value 1
O: Select Ln (2.7182818284590451) value from dual; 1

8. Use 10 as the base logarithm.
S: Select log10 (10) value 1
O: Select log (10, 10) value from dual; 1

9. Square
S: Select square (4) value 16
O: Select power (4, 2) value from dual 16

10. Take the square root
S: Select SQRT (4) value 2
O: Select SQRT (4) value from dual 2

11. Evaluate the base power of any number
S: Select power (3, 4) value 81
O: Select power (3, 4) value from dual 81

12. Random Number acquisition
S: Select rand () Value
O: select Sys. dbms_random.value (0, 1) value from dual;

13. Get the symbol
S: Select sign (-8) Value-1
O: Select sign (-8) value from dual-1

---------- Trigonometric function correlation

14. Circumference Rate
S: Select Pi () value 3.1415926535897931
O: Unknown

15. Sin, cos, and Tan parameters are in radians.
For example, select sin (PI ()/2) value to get 1 (sqlserver)

16. asin, ACOs, atan, atan2 return radians

17. radian angle Interchange (, Oracle unknown)
Degrees: Radian-> Angle
Radians: Angle-> radian

--------- Comparison of Values

18. Calculate the maximum value of the Set
S: Select max (value) value from
(Select 1 Value
Union
Select-2 value
Union
Select 4 value
Union
Select 3 value)

O: Select greatest (1,-2, 4, 3) value from dual

19. Minimum value of the Set
S: select Min (value) value from
(Select 1 Value
Union
Select-2 value
Union
Select 4 value
Union
Select 3 value)

O: Select least (1,-2, 4, 3) value from dual

20. How to Handle null values (replace null with 10 in F2)
S: Select F1, isnull (F2, 10) value from TBL
O: Select F1, nvl (F2, 10) value from TBL

-------- String functions

21. Search for the character serial number
S: Select ASCII ('A') Value
O: Select ASCII ('A') value from dual

22. calculate characters from the serial number
S: Select char (97) Value
O: Select CHR (97) value from dual

23. Connection
S: Select '11' + '22' + '33' Value
O: Select Concat ('11', '22') | 33 value from dual

23. substring position -- return 3
S: Select charindex ('s ', 'sdsq', 2) Value
O: Select instr ('sdsq', 's', 2) value from dual

23. Position of the fuzzy substring -- 2 is returned. If % is removed from the parameter, 7 is returned.
// This article from C ++ builder research-http://www.ccrun.com/article.asp? I = 996 & D = dwn1rn
S: Select patindex ('% d % Q %', 'sdsfasdqe ') Value
O: no oracle found, but instr can use the fourth parameter to control the number of occurrences.
Select instr ('sdsfasdqe ', 'sd', 1, 2) value from dual returns 6

24. Seek substrings
S: Select substring ('abcd', 2, 2) Value
O: Select substr ('abc', 2, 2) value from dual

25. Return aijklmnef as a substring
S: select stuff ('abcdef', 2, 3, 'ijklmn ') Value
O: Select Replace ('abcdef', 'bcd', 'ijklmn ') value from dual

26. replace all substrings
S: replace
O: Select translate ('fasdbfasegas', 'fa ', 'my') value from dual

27. Length
S: Len, datalength
O: Length

28. case-insensitive lower, upper

29. uppercase letters
S: No
O: Select initcap ('abcd DSAF df') value from dual

30. Left fill space (the first parameter of lpad is space, which is the same as the space function)
S: Select space (10) + 'abc' Value
O: Select lpad ('abc', 14) value from dual

31. Right fill space (the first parameter of rpad is space, which is the same as the space function)
S: Select 'abc' + space (10) Value
O: Select rpad ('abcd', 14) value from dual

32. Delete Spaces
S: ltrim, rtrim
O: ltrim, rtrim, trim

33. Duplicate string
S: Select replicate ('abcd', 2) Value
O: No

34. Comparison of pronunciation similarity (the two words return the same value and have the same pronunciation)
S: Select soundex ('Smith '), soundex ('smy ')
O: Select soundex ('Smith '), soundex ('smy') from dual
Comparison of soundex with select difference ('smithers', 'smythers ') in sqlserver
Returns 0-4, 4 for homophone, 1 for maximum

-------------- Date functions

35. system time
S: Select getdate () Value
O: Select sysdate value from dual

36. days before and after
Directly add or subtract from an integer

37. Calculate the date
S: Select convert (char (10), getdate (), 20) Value
O: Select trunc (sysdate) value from dual
Select to_char (sysdate, 'yyyy-mm-dd') value from dual

38. Time
S: Select convert (char (8), getdate (), 108) Value
O: Select to_char (sysdate, 'hh24: mm: ss') value from dual

39. Take other parts of date and time
S: datepart and datename functions (determined by the first parameter)
O: The second parameter of the to_char function is determined.

Parameter --------------------------------- The following table needs to be supplemented.
Year YY, yyyy
Quarter QQ, Q (quarter)
Month mm, M (m o is invalid)
Dayofyear dy, y (O table week)
Day DD, D (d o is invalid)
Week wk, ww (WK o is invalid)
Weekday DW (unclear O)
Hour HH, hh12, hh24 (hh12, hh24 S is invalid)
Minute Mi, n (n o is invalid)
Second SS, S (s o is invalid)
Millisecond MS (invalid O)
----------------------------------------------

40. Last day of the month
S: Unknown
O: Select last_day (sysdate) value from dual

41. A day of the week (such as Sunday)
S: Unknown
O: Select next_day (sysdate, 7) vaule from dual;

42. String Conversion time
S: Can be directly converted to or select cast ('2017-09-08 'As datetime) Value
O: Select to_date ('2017-01-05 22:09:38 ', 'yyyy-mm-dd hh24-mi-ss') vaule from dual;

43. Calculate the difference of a part of the two dates (for example, seconds)
S: Select datediff (SS, getdate (), getdate () + 12.3) Value
O: Subtract directly with two dates (for example, d1-d2 = 12.3)
Select (d1-d2) * 24*60*60 vaule from dual;

44. Calculate a new date (for example, minute) based on the difference value)
S: Select dateadd (MI, 8, getdate () Value
O: Select sysdate + 8/60/24 vaule from dual;

45. Time in different time zones
S: Unknown
O: Select new_time (sysdate, 'ydt ', 'gmt') vaule from dual;

----- Time Zone parameter. Beijing must be in the east 8 zone of ydt -------
Ast ADT Standard Atlantic time
Bst bdt Standard Time
Standard Time for central CST CDT
Est EDT standard Eastern Time
GMT Standard Time
Hst hdt Alaska-Hawaii Standard Time
Standard Time for mst mdt Mountainous Areas
NST standard time for new Finland
Pst PDT Pacific Standard Time
Yst ydt Yukon Standard Time

Character functions supported by Oracle and Their Microsoft SQL Server equivalent functions:

Functions: Oracle Microsoft SQL Server
Convert characters to ASCII
Concat (expression + expression)
Convert ASCII to CHR char
Returns the start character (from the left) instr charindex in the string.
Convert characters to lower-case lower
Convert character to uppercase upper
Fill the left lpad N/A of the string
Clear the starting blank ltrim
Clear trailing blank rtrim
Instr patindex
Repeat the string rpad replicate multiple times
Voice representation of the string soundex
Repeat the space string rpad Space
Convert numeric data to character data to_char Str
Substring substr substring
Replace stuff
Capital the first letter of each word in the string. initcap N/
Translation string translate N/
String Length: datelength or Len
The largest string in the list: greatest N/
The smallest string in the list, least N/.
If it is null, the conversion string nvl isnull

Date Functions

Functions: Oracle Microsoft SQL Server
Date addition (date column +/-value) or
Add_months dateadd
Difference between two dates (date column +/-value) or
Months_between datediff
Current date and time sysdate getdate ()
Last_day N/A on the last day of a month
Time zone conversion new_time N/
Next_day N/A for the first Sunday after the date
Represents the date string to_char datename
The integer to_number representing the date.
(To_char) datepart
Date rounding round convert
Trunc convert
Convert string to date to_date convert
If it is null, the conversion date is nvl isnull.

Conversion functions

Functions: Oracle Microsoft SQL Server
Convert numeric to to_char convert
Convert character to number to_number convert
Convert date to to_char convert
Convert character to date to_date convert
Hexadecimal conversion to binary hex_to_raw convert
Binary Conversion to hexadecimal raw_to_hex convert

Other row-level functions

Functions: Oracle Microsoft SQL Server
Returns the first non-empty expression decode coalesce.
Current Sequence Value currval N/
Next Sequence Value nextval N/
If exp1 = exp2, null decode nullif is returned.
User Logon account ID number uid suser_id
User Username: User suser_name
User Database ID number uid user_id
User Database Name User user_name
Current user CURRENT_USER
User Environment (audit trail) userenv N/
Level N/A in the connect by clause

Aggregate functions

Functions: Oracle Microsoft SQL Server
Average AVG
Count count
Maximum Max
Minimum min
Standard Deviation stddev STDev or stdevp
Summation sum
Variance variance var or varp

Oracle also has a useful function extract, which extracts and returns a specific time field in the datetime or interval expression:
Extract (year from date)

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.