English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
وظائف PostgreSQL المدمجة تُعرف أيضًا بوظائف التجميع، وتستخدم لمعالجة البيانات النصية أو العددية.
هذه قائمة بجميع الوظائف المدمجة في PostgreSQL العامة:
وظيفة COUNT: تستخدم لحساب عدد الأسطر في جدول قاعدة البيانات.
وظيفة MAX: تستخدم لاسترجاع أكبر قيمة في عمود معين.
وظيفة MIN: تستخدم لاسترجاع أصغر قيمة في عمود معين.
وظيفة AVG: تستخدم لحساب متوسط القيم في عمود معين.
وظيفة SUM: تستخدم لحساب مجموع القيم في عمود العدد.
وظائف الجداول: تستخدم لضمان إضافة القيم (بما في ذلك null) إلى الجداول.
وظائف العددية: قائمة شاملة بوظائف العمل التي تحتاجها SQL.
وظائف النصوص: قائمة شاملة بوظائف العمل التي تحتاجها SQL.
هذه قائمة بجميع وظائف الرياضيات التي يقدمها PostgreSQL، ويجب ملاحظة أن العديد من هذه الوظائف تتوفر بطرق متعددة، والفرق بينها هو نوع المعلمات فقط. ما لم يتم تحديد خلاف ذلك، فإن أي شكل من أشكال الوظائف يعود بنفس نوع البيانات الذي يحتويه المعلمات.
الوظيفة | نوع العودة | وصف | 实例 | 结果 |
---|---|---|---|---|
abs(x) | القيمة المطلقة | abs(-17.4) | 17.4 | |
cbrt(double) | جذر الثلاثي | cbrt(27.0) | 3 | |
ceil(double/numeric) | أصغر عدد صحيح غير أصغر من المعامل | ceil(-42.8) | -42 | |
degrees(double) | تحويل الدرجات إلى درجات | degrees(0.5) | 28.6478897565412 | |
exp(double/numeric) | الناتج الطبيعي | exp(1.0) | 2.71828182845905 | |
floor(double/numeric) | أكبر عدد صحيح غير أكبر من المعامل | floor(-42.8) | -43 | |
ln(double/numeric) | الناتج الطبيعي | ln(2.0) | 0.693147180559945 | |
log(double/numeric) | محدد قاعدة الأرقام الطبيعية | log(100.0) | 2 | |
log(b numeric,x numeric) | numeric | محدد قاعدة الأرقام الطبيعية | log(2.0, 64.0) | 6.0000000000 |
mod(y, x) | خذ الرقم المتبقي | mod(9,4) | 1 | |
pi() | double | مستقر "π" | pi() | 3.14159265358979 |
power(a double, b double) | double | حساب قوة a إلى b | power(9.0, 3.0) | 729 |
power(a numeric, b numeric) | numeric | حساب قوة a إلى b | power(9.0, 3.0) | 729 |
radians(double) | double | تحويل الزاوية إلى درجات | radians(45.0) | 0.785398163397448 |
random() | double | رقم عشوائي بين 0.0 و 1.0 | random() | |
round(double/numeric) | تعديل إلى عدد صحيح أقرب | round(42.4) | 42 | |
round(v numeric, s int) | numeric | تعديل إلى عدد صحيح يحتوي على s خانة عشرية | round(42.438,2) | 42.44 |
sign(double/numeric) | إشارة المعامل (-1,0,+1) | sign(-8.4) | -1 | |
sqrt(double/numeric) | جذر المربع | sqrt(2.0) | 1.4142135623731 | |
trunc(double/numeric) | قطع (قريب من الصفر) | trunc(42.8) | 42 | |
trunc(v numeric, s int) | numeric | 截断为s小数位置的数字 | trunc(42.438,2) | 42.43 |
الوظيفة | وصف |
---|---|
acos(x) | 反余弦 |
asin(x) | 反正弦 |
atan(x) | 反正切 |
atan2(x, y) | 正切 y/x 的反函数 |
cos(x) | 余弦 |
cot(x) | 余切 |
sin(x) | 正弦 |
tan(x) | 正切 |
下面是 PostgreSQL 中提供的字符串操作符列表:
الوظيفة | نوع العودة | وصف | 实例 | 结果 |
---|---|---|---|---|
string 丨丨 string | text | 字串连接 | 'Post' 丨丨 'greSQL' | PostgreSQL |
bit_length(string) | int | 字串里二进制位的个数 | bit_length('jose') | 32 |
char_length(string) | int | 字串中的字符个数 | char_length('jose') | 4 |
convert(string using conversion_name) | text | 使用指定的转换名字改变编码。 | convert('PostgreSQL' using iso_8859_1_to_utf8) | 'PostgreSQL' |
lower(string) | text | 把字串转化为小写 | lower('TOM') | tom |
octet_length(string) | int | 字串中的字节数 | octet_length('jose') | 4 |
overlay(string placing string from int [for int]) | text | 替换子字串 | overlay('Txxxxas' placing 'hom' from 2 for 4) | Thomas |
position(substring in string) | int | 指定的子字串的位置 | position('om' in 'Thomas') | 3 |
substring(string [from int] [for int]) | text | 抽取子字串 | substring('Thomas' from 2 for 3) | hom |
substring(string from pattern) | text | 抽取匹配 POSIX 正则表达式的子字串 | substring('Thomas' from '…$') | mas |
substring(string from pattern for escape) | text | استخراج فرع السلسلة الذي يتطابق مع التعبيرات النصية العادية SQL | substring('Thomas' from '%#"o_a#"_' for '#') | oma |
trim([leading丨trailing 丨 both] [characters] from string) | text | حذف أطول السلاسل التي تحتوي فقط على characters (الافتراض هو مساحة بيضاء) من بداية ونهاية السلسلة string | trim(both 'x' from 'xTomxx') | Tom |
upper(string) | text | تحويل السلسلة إلى حروف كبيرة | upper('tom') | TOM |
ascii(text) | int | رمز ASCII للحرف الأول من المعامل | ascii('x') | 120 |
btrim(string text [, characters text]) | text | حذف أطول السلاسل التي تحتوي فقط على characters (الافتراض هو مساحة بيضاء) من بداية ونهاية السلسلة string | btrim('xyxtrimyyx','xy') | trim |
chr(int) | text | تقديم حرف يحتوي على رمز ASCII | chr(65) | A |
convert(string text, [src_encoding name,] dest_encoding name) | text | تحويل السلسلة إلى dest_encoding | convert( 'text_in_utf8', 'UTF8', 'LATIN1') | ممثل text_in_utf8 بكود ISO 8859-1 |
initcap(text) | text | تحويل أول حرف من كل كلمة إلى حرف كبير، مع الحفاظ على الحروف الأخرى صغيرة. الكلمة هي سلسلة من الأحرف الأبجدية أو الأرقام، مفصولة بأحرف غير أرقام. | initcap('hi thomas') | Hi Thomas |
length(string text) | int | عدد الأحرف في السلسلة string | length('jose') | 4 |
lpad(string text, length int [, fill text]) | text | ملء السلسلة string بقدر طول length عن طريق استخدام حرف fill (الافتراض هو مساحة بيضاء). إذا كانت السلسلة string أطول من length، فإنها تُقطع (من النهاية). | lpad('hi', 5, 'xy') | xyxhi |
ltrim(string text [, characters text]) | text | من حذف أطول السلاسل التي تحتوي فقط على characters (الافتراض هو مساحة بيضاء) من بداية السلسلة string. | ltrim('zzzytrim','xyz') | trim |
md5(string text) | text | حساب دالة md5 لنص معين ويعود النتيجة بأسلوب السلسلة العشرية. | md5('abc') | |
repeat(string text, number int) | text | تكرار النص string number مرات. | repeat('Pg', 4) | PgPgPgPg |
replace(string text, from text, to text) | text | تبديل جميع اللفظ الموجود في النص string إلى النص XX. | replace('abcdefabcdef', 'cd', 'XX') | abXXefabXXef |
rpad(string text, length int [, fill text]) | text | ملء النص string بحرف fill (الافتراضي هو فاصلة) لجعله طوله length. إذا كان النص بالفعل أطول من length، فإنه يتم قطعه. | rpad('hi', 5, 'xy') | هكسكس |
rtrim(string text [, character text]) | text | حذف أطول نص مكون من character من نهاية النص string (الافتراضي هو فاصلة) | rtrim('trimxxxx','x') | trim |
split_part(string text, delimiter text, field int) | text | استرجاع الفقاعة الفصلية المكونة من النصوص باستخدام delimiter ويعود الفقاعة في الميدان. | split_part('abc~@~def~@~ghi', '~@~', 2) | def |
strpos(string, substring) | text | موقع اللفظ المعلن. | strpos('high','ig') | 2 |
substr(string, from [, count]) | text | استخراج النص الفرعي. | substr('alphabet', 3, 2) | ف |
to_ascii(text [, encoding]) | text | تحويل النص من تشفير آخر إلى ASCII. | to_ascii('كارل') | كارل |
to_hex(number int/bigint) | text | بإمكانك تحويل العدد إلى شكله الثنائي. | to_hex(9223372036854775807) | 7fffffffffffffff |
translate(string text, from text, to text) | text | تحويل أي رمز موجود في النص الذي يحتوي على أي تطابق من within إلى الرمز المماثل في within | translate('12345', '14', 'ax') | a23x5 |
الوظيفة | نوع العودة | وصف | مثال |
---|---|---|---|
to_char(timestamp, text) | text | تحويل timestamp إلى نص | to_char(current_timestamp, 'HH12:MI:SS') |
to_char(interval, text) | text | تحويل فترة الوقت إلى نص | to_char(interval '15h 2m 12s', 'HH24:MI:SS') |
to_char(int, text) | text | تحويل عدد صحيح إلى نص | to_char(125, '999') |
to_char(double precision, text) | text | تحويل دقة عالية إلى نص | to_char(125.8::real, '999D9') |
to_char(numeric, text) | text | تحويل الرقم إلى نص | to_char(-125.8, '999D99S') |
to_date(text, text) | date | تحويل النص إلى تاريخ | to_date('05 Dec 2000', 'DD Mon YYYY') |
to_number(text, text) | numeric | تحويل النص إلى عدد | to_number('12,454.8-', '99G999D9S') |
to_timestamp(text, text) | timestamp | تحويل إلى تنسيق وقت معين time zone تحويل النص إلى timestamp | to_timestamp('05 Dec 2000', 'DD Mon YYYY') |
to_timestamp(double precision) | timestamp | تحويل عصر UNIX إلى timestamp | to_timestamp(1284352323) |
مقالة مرجعية: https://blog.csdn.net/sun5769675/article/details/50628979