MySQL to SQL Server Coding Differences


By:
Overview

There are certain differences between some commonly used SQL code in Microsoft SQL Server's Transact SQL and MySQL.

Explanation

The following code snippets show examples of some commons functions which are different in the two database management systems. The first code is for MySQL and the second code is for MS SQL.

Length of a string:

SELECT CHARACTER_LENGTH(string_data)
FROM TestTable

SELECT LEN(string_data)
FROM TestTable

Concatenation of strings:

SELECT CONCAT('MS','SQL','Tips')

SELECT ('MS' + 'SQL' + 'Tips')

Select first 10 records from a table:

SELECT * FROM TestTable WHERE id=12 LIMIT 10

SELECT TOP 10 * FROM TestTable WHERE id=12

Generate Globally Unique Identifier (GUID):

SELECT UUID()

SELECT NEWID()

Select a random record:

SELECT * FROM TestTable ORDER BY RAND() LIMIT 1

SELECT TOP 1 * FROM TestTable ORDER BY NEWID()

Return current date and time:

SELECT NOW()

SELECT GETDATE()

Auto increment field definition:

TestTable INTEGER AUTO_INCREMENT PRIMARY KEY

TestTable INT IDENTITY PRIMARY KEY

Database version:

SELECT VERSION()

SELECT @@VERSION

Please note that MS SQL does not support the commenting option using #, but -- and /*  */ work the same way.




Comments For This Article




Monday, April 25, 2016 - 3:03:27 AM - karthikaqpt Back To Top (41320)

SQL and Mysql:

Take a look at the top-n section. In MySQL:

 

SELECT age

FROM person

ORDER BY age ASC

LIMIT 1 OFFSET 2

In SQL Server (T-SQL):

 

SELECT TOP 3 WITH TIES *

FROM person

ORDER BY age ASC 

Learn sql from https://www.youtube.com/watch?v=7Vtl2WggqOg















get free sql tips
agree to terms