English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

وظائف MySQL

MySQL تحتوي على العديد من الوظائف المدمجة، وتم عرض شرح هذه الوظائف أدناه.

وظائف النصوص MySQL

الوظيفةوصفمثال
ASCII(s)يعود قيمة ASCII لأول حرف من النص s.

يعود قيمة ASCII لأول حرف من حقل CustomerName:

SELECT ASCII(CustomerName) AS NumCodeOfFirstChar
FROM Customers;
CHAR_LENGTH(s)يعود عدد أحرف السلسلة s

يعود عدد أحرف السلسلة w3codebox

SELECT CHAR_LENGTH("w3codebox") AS LengthOfString;
CHARACTER_LENGTH(s)يعود عدد أحرف السلسلة s

يعود عدد أحرف السلسلة w3codebox

SELECT CHARACTER_LENGTH("w3codebox") AS LengthOfString;
CONCAT(s1,s2...sn)دمج سلاسل s1,s2 وما إلى ذلك في سلسلة واحدة

دمج عدة سلاسل

SELECT CONCAT("SQL ", "w3codebox ", "Gooogle ", "Facebook") AS ConcatenatedString;
CONCAT_WS(x, s1,s2...sn)مثل وظيفة CONCAT(s1,s2,...)، ولكن يجب إضافة x بين كل سلسلة، يمكن أن يكون x فاصلة

دمج عدة سلاسل وأضف فاصلة:

SELECT CONCAT_WS("-", "SQL", "Tutorial", "is", "fun!") AS ConcatenatedString;
FIELD(s,s1,s2...)يعود موقف السلسلة الأولى s في قائمة السلاسل (s1,s2...)

يعود موقف السلسلة c في قائمة القيم:

SELECT FIELD("c", "a", "b", "c", "d", "e");
FIND_IN_SET(s1,s2)يعود موقف السلسلة التي تتطابق مع s1 في السلسلة s2

يعود موقف السلسلة c في السلسلة المحددة:

SELECT FIND_IN_SET("c", "a,b,c,d,e");
FORMAT(x,n)يمكن للوظيفة تنسيق الرقم x "#,###.##"، للحفاظ على x بعد نقطة العشرات n، ويتم رفع الآخر إلى أعلى

ت formato رقم "#,###.##" شكل:

SELECT FORMAT(250500.5634, 2); -- يظهر 250,500.56
INSERT(s1,x,len,s2)السلسلة s2 تعتمد على بدء s1 في الموضع x طول s2

استبدال 6 حرفًا من بداية النص باستخدام w3codebox:

SELECT INSERT("google.com", 1, 6, "w3codebox");  -- النتيجة: oldtoolbag.com
LOCATE(s1,s)استخراج موقع البداية من النص s1

الحصول على موقع b في النص abc:

SELECT LOCATE('st','myteststring');  -- 5

إرجاع موقع b في النص abc:

SELECT LOCATE('b', 'abc') -- 2
LCASE(s)تحويل جميع الأحرف في النص s إلى أحرف صغيرة

تحويل النص w3codebox إلى أحرف صغيرة:

SELECT LCASE('w3codebox') -- w3codebox
LEFT(s,n)إرجاع الأحرف الن n الأولى من النص s:

إرجاع الأحرف الثلاثة الأولى من النص w3codebox:

SELECT LEFT('w3codebox',2) -- ru
LOWER(s)تحويل جميع الأحرف في النص s إلى أحرف صغيرة

تحويل النص w3codebox إلى أحرف صغيرة:

SELECT LOWER('w3codebox') -- w3codebox
LPAD(s1,len,s2)ملء النص s2 في بداية النص s1 لتحقيق طول len

ملء النص xx في بداية النص abc:

SELECT LPAD('abc',5,'xx') -- xxabc
LTRIM(s)إزالة الفراغات من بداية النص s:

إزالة الفراغات من بداية النص w3codebox:

SELECT LTRIM("    w3codebox") AS LeftTrimmedString;-- w3codebox
MID(s,n,len)استخراج النص الفرعي من النص s من الموقع n طول len، مثل SUBSTRING(s,n,len)

من حرف الرقم 2 من النص w3codebox استخراج 3 حرف:

SELECT MID("w3codebox", 2, 3) AS ExtractString; -- UNO
POSITION(s1 IN s)استخراج موقع البداية من النص s1

إرجاع موقع b في النص abc:

SELECT POSITION('b' in 'abc') -- 2
REPEAT(s,n)التعريف بتمثيل النص s n مرات

التعريف بتمثيل النص w3codebox ثلاث مرات:

SELECT REPEAT('w3codebox',3) -- w3codeboxw3codeboxw3codebox
REPLACE(s,s1,s2)استبدال النص s2 بالنص s

استبدال الحرف a في النص abc بحرف x:

SELECT REPLACE('abc','a','x') -- xbc
REVERSE(s)عكس ترتيب النص s

عكس ترتيب النص abc:

SELECT REVERSE('abc') -- cba
RIGHT(s,n)إرجاع الأحرف الأخيرة من النص s

إرجاع الأحرف الأخيرة من النص w3codebox:

SELECT RIGHT('w3codebox',2) -- ob
RPAD(s1,len,s2)إضافة النص s2 في نهاية النص s1 لتحقيق طول النص len

ملء النص xx في نهاية النص abc:

SELECT RPAD('abc',5,'xx') -- abcxx
RTRIM(s)إزالة الفراغات من نهاية النص s

إزالة الفراغات من نهاية النص w3codebox:

SELECT RTRIM("w3codebox     ") AS RightTrimmedString;   -- w3codebox
SPACE(n)إرجاع n مسافات

إرجاع 10 مسافات:

SELECT SPACE(10);
STRCMP(s1,s2)مقارنة النصوص s1 و s2، إذا كانت s1 تساوي s2، يتم العودة 0، إذا كانت s1 أكبر من s2، يتم العودة 1، إذا كانت s1 أصغر من s2، يتم العودة -1

مقارنة النصوص:

SELECT STRCMP("w3codebox", "w3codebox");  -- 0
SUBSTR(s, start, length)استخراج النص الفرعي من النص s من موقع البداية start طول النص length

من حرف الرقم 2 من النص w3codebox استخراج 3 حرف:

SELECT SUBSTR("w3codebox", 2, 3) AS ExtractString; -- UNO
SUBSTRING(s, start, length)استخراج النص الفرعي من النص s من موقع البداية start طول النص length

من حرف الرقم 2 من النص w3codebox استخراج 3 حرف:

SELECT SUBSTRING("w3codebox", 2, 3) AS ExtractString; -- UNO
SUBSTRING_INDEX(s, delimiter, number)يعود النص الذي يوجد بعد المظهر الرابع لـ delimiter في النص s.
إذا كان number إيجابياً، يعود النص الذي يوجد إلى اليسار من الحرف الذي هو number.
إذا كان number سالباً، يعود النص الذي يوجد إلى اليمين من الحرف الذي هو (القيمة المطلقة لـ number) من اليمين.
SELECT SUBSTRING_INDEX('a*b','*',1) -- a
SELECT SUBSTRING_INDEX('a*b','*',-1) -- b
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('a*b*c*d*e','*',3),'*',-1) -- c
TRIM(s)إزالة الفراغات من البداية والنهاية للنص s

إزالة الفراغات من النهاية والبداية للنص w3codebox:

SELECT TRIM('    w3codebox    ') AS TrimmedString;
UCASE(s)تحويل النص إلى أحرف كبيرة

تحويل النص w3codebox إلى أحرف كبيرة:

SELECT UCASE("w3codebox"); -- w3codebox
UPPER(s)تحويل النص إلى أحرف كبيرة

تحويل النص w3codebox إلى أحرف كبيرة:

SELECT UPPER("w3codebox"); -- w3codebox

وظائف عددية MySQL

اسم الدالةوصفمثال
ABS(x)يعود القيمة المطلقة لـ x  

يعود القيمة المطلقة لـ -1:

SELECT ABS(-1) -- يعود 1
ACOS(x)حساب زاوية معاكسة الأوقست (المتغير هو راديان)
SELECT ACOS(0.25);
ASIN(x)حساب زاوية معاكسة الأسين (المتغير هو راديان)
SELECT ASIN(0.25);
ATAN(x)حساب زاوية معاكسة (المتغير هو راديان)
SELECT ATAN(2.5);
ATAN2(n, m)حساب زاوية معاكسة (المتغير هو راديان)
SELECT ATAN2(-0.8, 2);
AVG(expression)يعود متوسط تعبير، تعبير هو حقل

يعود متوسط Price في جدول Products:

SELECT AVG(Price) AS AveragePrice FROM Products;
CEIL(x)يعود أكبر عدد صحيح مساوي أو أكبر من x 
SELECT CEIL(1.5) -- يعود 2
صعودي(x) يعود أكبر عدد صحيح مساوي أو أكبر من x 
SELECT صعودي(1.5); -- يعود 2
COS(x)البحث عن القيمة المتبقية (المعامل هو الزاوية بالوحدات المائوية)
SELECT COS(2);
COT(x)البحث عن القيمة المتبقية (المعامل هو الزاوية بالوحدات المائوية)
SELECT COT(6);
COUNT(expression)الرجوع إلى عدد السجلات في الاستعلام،parameter هو حقل أو علامة *

الرجوع إلى عدد السجلات في حقل products من جدول Products:

SELECT COUNT(ProductID) AS NumberOfProducts FROM Products;
DEGREES(x)تحويل الزوايا من الوحدات المائوية إلى الزوايا المئوية  
SELECT DEGREES(3.1415926535898) -- 180
n DIV mالقسمة الصحيحة،n هي الموزع،m هي الموزعة

حساب 10 مقسومًا على 5:

SELECT 10 DIV 5; -- 2
EXP(x)الرجوع إلى x مرفوعًا إلى قوة e  

حساب الثلاثي أضعاف e:

SELECT EXP(3) -- 20.085536923188
FLOOR(x)الرجوع إلى أكبر عدد صحيح أقل أو يساوي x  

العدد الصحيح الذي هو أقل أو يساوي 1.5:

SELECT FLOOR(1.5) -- يعود إلى 1
GREATEST(expr1, expr2, expr3, ...)الرجوع إلى القيمة الأكبر في القائمة

الرجوع إلى القيمة الأكبر في قائمة الأرقام التالية:

SELECT GREATEST(3, 12, 34, 8, 25); -- 34

الرجوع إلى القيمة الأكبر في قائمة الأنماط التالية:

SELECT GREATEST("Google", "w3codebox", "Apple"); -- w3codebox
LEAST(expr1, expr2, expr3, ...)الرجوع إلى القيمة الأدنى في القائمة

الرجوع إلى القيمة الأدنى في قائمة الأرقام التالية:

SELECT LEAST(3, 12, 34, 8, 25); -- 3

الرجوع إلى القيمة الأدنى في قائمة الأنماط التالية:

SELECT LEAST("Google", "w3codebox", "Apple"); -- Apple
LNالرجوع إلى الجبرية الطبيعية للعدد،بقاعدة e.

الرجوع إلى الجبرية الطبيعية لعدد 2:

SELECT LN(2); -- 0.6931471805599453
LOG(x) أو LOG(base, x)الرجوع إلى الطبيعي لجبرية (الجبرية القاعدية e)،إذا كان هناك معامل base،فالقاعدة المحددة تكون base.  
SELECT LOG(20.085536923188) -- 3
SELECT LOG(2, 4); -- 2
LOG10(x)يعيد القيمة الطبيعية للجذر التربيع لـ 10  
SELECT LOG10(100) -- 2
LOG2(x)يعيد القيمة الطبيعية للجذر التربيع لـ 2

يعيد القيمة الطبيعية للجذر التربيع لـ 2 من 6:

SELECT LOG2(6); -- 2.584962500721156
MAX(expression)يعيد أكبر قيمة لـ expression

يعيد أكبر قيمة لـ Price في جدول Products:

SELECT MAX(Price) AS LargestPrice FROM Products;
MIN(expression)يعيد أصغر قيمة لـ expression

يعيد أصغر قيمة لـ Price في جدول Products:

SELECT MIN(Price) AS MinPrice FROM Products;
MOD(x,y)يعيد الباقي عند تقسيم x على y 

الباقي عند تقسيم 5 على 2:

SELECT MOD(5,2) -- 1
PI()يعيد القيمة الدالة على دائرة (3.141593)  
SELECT PI() -- 3.141593
POW(x,y)يعيد x مرفوعًا إلى القوة y 

الجذر التربيع لـ 2:

SELECT POW(2,3) -- 8
POWER(x,y)يعيد x مرفوعًا إلى القوة y 

الجذر التربيع لـ 2:

SELECT POWER(2,3) -- 8
RADIANS(x)تحويل الزوايا إلى درجات قوسية  

تحويل 180 درجة إلى درجات قوسية:

SELECT RADIANS(180) -- 3.1415926535898
RAND()يعيد عدد عشوائي بين 0 و 1  
SELECT RAND() -- 0.93099315644334
ROUND(x)يعيد أكبر عدد كامل يقترب من x
SELECT ROUND(1.23456) -- 1
SIGN(x)يعيد إشارة x، إذا كان x سالباً أو صفرًا أو إيجابيًا، يعيد -1 أو 0 أو 1 
SELECT SIGN(-10) -- (-1)
SIN(x)إيجاد قيمة الجيب (المفيد هو الدرجات)  
SELECT SIN(RADIANS(30)) -- 0.5
SQRT(x)يعيد الجذر التربيع لـ x  

الجذر التربيع لـ 25:

SELECT SQRT(25) -- 5
SUM(expression)إرجاع مجموع حقل معين

حساب مجموع حقل Quantity في جدول OrderDetails:

SELECT SUM(Quantity) AS TotalItemsOrdered FROM OrderDetails;
TAN(x)حساب قيمة الزاوية (المعامل هو الدرجات)
SELECT TAN(1.75);  -- -5.52037992250933
TRUNCATE(x,y)إرجاع قيمة عددية x محفوظة حتى بعد نقطة العشرات y (الفرق الأكبر مع ROUND هو أنه لا يتم إجراء التبديل)
SELECT TRUNCATE(1.23456,3) -- 1.234

وظائف تاريخ MySQL

اسم الدالةوصفمثال
ADDDATE(d,n)حساب تاريخ d المضاف إليه n أيام
SELECT ADDDATE("2017-06-15", INTERVAL 10 DAY);
->2017-06-25
ADDTIME(t,n)n هو تعبير وقت، إضافة وقت t إلى تعبير الوقت n

إضافة 5 ثواني:

SELECT ADDTIME('2011-11-11 11:11:11', 5);
->2011-11-11 11:11:16 (ثانية)

إضافة 2 ساعة, 10 دقائق, 5 ثواني:

SELECT ADDTIME("2020-06-15 09:34:21", "2:10:5"); 
-> 2020-06-15 11:44:26
CURDATE()إرجاع التاريخ الحالي
SELECT CURDATE();
-> 2018-09-19
CURRENT_DATE()إرجاع التاريخ الحالي
SELECT CURRENT_DATE();
-> 2018-09-19
CURRENT_TIMEإرجاع الوقت الحالي
SELECT CURRENT_TIME();
-> 19:59:02
CURRENT_TIMESTAMP()استرجاع التاريخ والوقت الحالي
SELECT CURRENT_TIMESTAMP();
-> 2018-09-19 20:57:43
CURTIME()إرجاع الوقت الحالي
SELECT CURTIME();
-> 19:59:02
DATE()استخراج قيمة التاريخ من تعبير تاريخ أو وقت التاريخ
SELECT DATE("2017-06-15");    
-> 2017-06-15
DATEDIFF(d1,d2)حساب عدد الأيام الفاصلة بين تاريخ d1->d2
SELECT DATEDIFF('2001-01-01','2001-02-02')
-> -32
DATE_ADD(d,INTERVAL expr type)计算起始日期 d 加上一个时间段后的日期
SELECT ADDDATE('2011-11-11 11:11:11',1)
-> 2011-11-12 11:11:11    (默认是天)
->-32
DATE_ADD(d،INTERVAL expr type)
تحديد تاريخ d بعد إضافة فترة زمنية->2011-11-11 11:16:11 (قيمة TYPE مشابهة للوظيفة المذكورة أعلاه)
DATE_FORMAT(d,f)
تحديد تاريخ d حسب التعبير f
->2011-11-11 11:11:11 صباحًاDATE_SUB(date,INTERVAL expr type)

يحسب الوقت من التاريخ.

OrderDate في جدول Orders يزاد بـ 2 يوم:
تحديد OrderId،Date_sub(OrderDate,INTERVAL 2 DAY) كOrderPayDate
من OrdersDAY(d)
إرجاع جزء التاريخ من التاريخ d  
->15
DAYNAME(d)إرجاع اليوم من التاريخ d،مثل Monday,Tuesday
تحديد اليوم من التاريخ '2011-11-11 11:11:11'
->الجمعة
DAYOFMONTH(d)حساب اليوم من الشهر d هو أي يوم من الشهر
تحديد اليوم من الشهر '2011-11-11 11:11:11'
->11
DAYOFWEEK(d)يوم التاريخ d هو أي يوم من الأسبوع،1 هو الأحد،2 هو الاثنين،إلى آخره
تحديد اليوم من الأسبوع '2011-11-11 11:11:11'
->6
DAYOFYEAR(d)حساب اليوم من السنة d هو أي يوم من السنة
تحديد اليوم من السنة '2011-11-11 11:11:11'
->315
استخراج (type FROM d)الحصول على القيمة المحددة من التاريخ d،type تحدد القيمة التي يتم إرجاعها.
قيمة type يمكن أن تكون:
  • المللي ثانية

  • SECOND

  • MINUTE

  • HOUR

  • DAY

  • WEEK

  • MONTH

  • QUARTER

  • YEAR

  • SECOND_MICROSECOND

  • MINUTE_MICROSECOND

  • MINUTE_SECOND

  • HOUR_MICROSECOND

  • HOUR_SECOND

  • HOUR_MINUTE

  • DAY_MICROSECOND

  • DAY_SECOND

  • DAY_MINUTE

  • DAY_HOUR

  • YEAR_MONTH

SELECT EXTRACT(MINUTE FROM '2011-11-11 11:11:11'); 
-> 11
FROM_DAYS(n)计算从 0000 年 1 月 1 日开始 n 天后的日期
SELECT FROM_DAYS(1111);
-> 0003-01-16
HOUR(t)返回 t 中的小时值
SELECT HOUR('1:2:3')
-> 1
LAST_DAY(d)返回给定日期的那一月份的最后一天
SELECT LAST_DAY("2017-06-20");
-> 2017-06-30
LOCALTIME();استرجاع التاريخ والوقت الحالي
SELECT LOCALTIME();
-> 2018-09-19 20:57:43
LOCALTIMESTAMP();استرجاع التاريخ والوقت الحالي
SELECT LOCALTIMESTAMP();
-> 2018-09-19 20:57:43
MAKEDATE(year, day-of-year)基于给定参数年份 year 和所在年中的天数序号 day-of-year 返回一个日期
SELECT MAKEDATE(2017, 3);
-> 2017-01-03
MAKETIME(hour, minute, second)组合时间,参数分别为小时、分钟、秒
SELECT MAKETIME(11, 35, 4);
-> 11:35:04
MICROSECOND(date)返回日期参数所对应的微秒数
SELECT MICROSECOND("2017-06-20 09:34:00.000023");
-> 23
MINUTE(t)返回 t 中的分钟值
SELECT MINUTE('1:2:3')
-> 2
MONTHNAME(d)返回日期中的月份名称,如 November
SELECT MONTHNAME('2011-11-11 11:11:11')
-> November
MONTH(d)استرجاع قيمة الشهر في التاريخ d،من 1 إلى 12
SELECT MONTH('2011-11-11 11:11:11');
->11
NOW();استرجاع التاريخ والوقت الحالي
SELECT NOW();
-> 2018-09-19 20:57:43
PERIOD_ADD(period, number)إضافة فترة واحدة إلى تاريخ المجموعة سنة-شهر
SELECT PERIOD_ADD(201703, 5);   
-> 201708
PERIOD_DIFF(period1, period2)استرجاع الفرق في أشهر بين اثنين من الفترات
SELECT PERIOD_DIFF(201710, 201703);
-> 7
QUARTER(d)استرجاع 季節 التاريخ d،عائد من 1 إلى 4
SELECT QUARTER('2011-11-11 11:11:11');
-> 4
SECOND(t)استرجاع قيمة الثانية في t
SELECT SECOND('1:2:3');
-> 3
SEC_TO_TIME(s)تحويل الوقت بالثواني s إلى تنسيق ساعات:دقائق:ثواني
SELECT SEC_TO_TIME(4320);
-> 01:12:00
STR_TO_DATE(string, format_mask)تحويل السلسلة إلى تاريخ
SELECT STR_TO_DATE("August 10 2017", "%M %d %Y");
-> 2017-08-10
SUBDATE(d,n)تاريخ d بعد إزالة n يوم
SELECT SUBDATE('2011-11-11 11:11:11', 1);
->2011-11-10 11:11:11 (الافتراض هو اليوم)
SUBTIME(t,n)فترة الوقت t بعد إزالة n ثانية
SELECT SUBTIME('2011-11-11 11:11:11', 5);
->2011-11-11 11:11:06 (ثانية)
SYSDATE();استرجاع التاريخ والوقت الحالي
SELECT SYSDATE();
-> 2018-09-19 20:57:43
TIME(expression)استخراج جزء الوقت من التعبير المدخل
SELECT TIME("19:30:10");
-> 19:30:10
TIME_FORMAT(t,f)بالتعبير عن f عرض الوقت t
SELECT TIME_FORMAT('11:11:11','%r')
11:11:11 صباحًا
TIME_TO_SEC(t)تحويل الوقت t إلى ثواني
SELECT TIME_TO_SEC('1:12:00')
-> 4320
TIMEDIFF(time1, time2)حساب الفرق في الوقت
SELECT TIMEDIFF("13:10:11", "13:10:10");
-> 00:00:01
TIMESTAMP(expression, interval)عندما يكون لدينا معامل واحد،يعود الدالة إلى تاريخ أو تعبير تاريخ وتوقيت؛عندما يكون لدينا معاملين،يقوم بجمع المعاملين
SELECT TIMESTAMP("2017-07-23", "13:10:11");
-> 2017-07-23 13:10:11
TO_DAYS(d)حساب عدد الأيام بين تاريخ d و0000-01-01
SELECT TO_DAYS('0001-01-01 01:01:01')
-> 366
WEEK(d)حساب الأسبوع d من السنة الحالية،النطاق هو 0 إلى 53
SELECT WEEK('2011-11-11 11:11:11')
-> 45
WEEKDAY(d)تاريخ d هو يوم من الأسبوع،0 يعني يوم الاثنين،1 يعني يوم الثلاثاء
SELECT WEEKDAY("2017-06-15");
-> 3
WEEKOFYEAR(d)حساب الأسبوع d من السنة الحالية،النطاق هو 0 إلى 53
SELECT WEEKOFYEAR('2011-11-11 11:11:11')
-> 45
YEAR(d)يعود السنة
SELECT YEAR("2017-06-15");
-> 2017
YEARWEEK(date, mode)يعود السنة والاسبوع (من 0 إلى 53)،0 يعني يوم الأحد،1 يعني يوم الاثنين،إلى آخره
SELECT YEARWEEK("2017-06-15");
-> 201724

دوال متقدمة لـ MySQL

اسم الدالةوصفمثال
BIN(x)عدد ثنائي x

رمز ثنائي 15:

SELECT BIN(15); -- 1111
ثنائي(s)تحويل السلسلة النصية s إلى سلسلة ثنائية
SELECT ثنائي "w3codebox";
->w3codebox
CASE تعبير
    WHEN شرط1 THEN نتيجة1
    WHEN condition2 THEN result2
   ...
    WHEN conditionN THEN resultN
    ELSE result
END
CASE تمثل بداية الدالة،END تمثل نهاية الدالة. إذا كان condition1 صحيحًا، يتم إرجاع result1، إذا كان condition2 صحيحًا، يتم إرجاع result2، عند عدم صحة جميعها يتم إرجاع result، وعندما يصبح واحد صحيحًا لا يتم تنفيذ ما يلي.
SELECT CASE 
  WHEN 1 > 0
  THEN '1 > 0'
  WHEN 2 > 0
  THEN '2 > 0'
  ELSE '3 > 0'
  END
->1 > 0
CAST(x AS type)تحويل نوع البيانات

تحويل تاريخ السلسلة إلى تاريخ:

SELECT CAST("2017-08-29" AS DATE);
->2017-08-29
COALESCE(expr1, expr2, ...., expr_n)يُرجع التعبير الأول غير الفارغ من المعطيات (من اليسار إلى اليمين)
SELECT COALESCE(NULL, NULL, NULL, 'oldtoolbag.com', NULL, 'google.com');
->oldtoolbag.com
CONNECTION_ID()يُرجع ID الاتصال الفريد
SELECT CONNECTION_ID();
->4292835
CONV(x,f1,f2)يُرجع f1 في النظام الرقمي f2
SELECT CONV(15, 10, 2);
->1111
CONVERT(s USING cs)تُحوّل الدالة السلسلة s إلى مجموعة الحروف cs
SELECT CHARSET('ABC')
->utf-8    
SELECT CHARSET(CONVERT('ABC' USING gbk))
->gbk
CURRENT_USER()يعود المستخدم الحالي
SELECT CURRENT_USER();
-> guest@%
DATABASE()يُرجع اسم قاعدة البيانات الحالية
SELECT DATABASE();   
->w3codebox
IF(expr,v1,v2)إذا كان التعبير expr صحيحًا، يتم إرجاع النتيجة v1؛ وإلا، يتم إرجاع النتيجة v2.
SELECT IF(1 > 0, 'صحيح', 'خطأ')    
->صحيح
IFNULL(v1,v2)إذا كانت قيمة v1 غير NULL، فتعود v1، وإلا فتعود v2.
SELECT IFNULL(null, 'Hello Word')
->Hello Word
ISNULL(expression)تحديد ما إذا كانت التعبير NULL أم لا
SELECT ISNULL(NULL);
->1
LAST_INSERT_ID();يعود أحدث قيمة AUTO_INCREMENT المولدة
SELECT LAST_INSERT_ID();
->6
NULLIF(expr1, expr2)مقارنة سلسلتين، إذا كانت السلسلة expr1 تساوي expr2، فتعود NULL، وإلا فتعود expr1
SELECT NULLIF(25, 25);
->
SESSION_USER();يعود المستخدم الحالي
SELECT SESSION_USER();
-> guest@%
SYSTEM_USER();يعود المستخدم الحالي
SELECT SYSTEM_USER();
-> guest@%
USER();يعود المستخدم الحالي
SELECT USER();
-> guest@%
VERSION();يعود بنسخة قاعدة البيانات
SELECT VERSION();
-> 5.6.34