By: Tibor Nagy
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