cari
Rumahpangkalan dataOracleApakah fungsi oracle?

Apakah fungsi oracle?

Mar 16, 2022 pm 05:36 PM
oraclefungsi

Fungsi Oracle termasuk: 1. Fungsi rentetan, termasuk ASCII(), CONCAT(), dsb.; 2. Fungsi angka, termasuk ABS(), COS(), dsb. 3. Fungsi tarikh, termasuk EXTRACT( ), ROUND(), dsb.; 4. Fungsi penukaran, termasuk TO_CHAR(), TO_DATE(), dsb.

Apakah fungsi oracle?

Persekitaran pengendalian tutorial ini: sistem Windows 7, versi Oracle 11g, komputer Dell G3.

Pernyataan Oracle SQL sering menggunakan fungsi Oracle sendiri. Fungsi ini memperkayakan fungsi bahasa SQL dan memberikan lebih kebolehoperasian untuk Oracle SQL. Fungsi Oracle boleh menerima sifar atau lebih parameter input dan mengembalikan hasil output. Terdapat dua jenis fungsi utama yang digunakan dalam pangkalan data Oracle:

1 Fungsi baris tunggal : Apabila setiap fungsi digunakan pada rekod jadual, hanya nilai lajur dalam. satu baris boleh dimasukkan sebagai parameter (atau pemalar), dan mengembalikan hasil.

Contohnya 1: MOD(X,Y) ialah fungsi baki yang mengembalikan baki X dibahagikan dengan Y, di mana X dan Y boleh menjadi nilai lajur atau pemalar.

Contohnya 2: TO_CHAR(X,'YYYYMMDD') ialah fungsi yang menukar jenis masa kepada rentetan, di mana X boleh menjadi lajur jenis masa tertentu (tarikh) dalam baris, atau ia boleh pemalar jenis masa.

Fungsi baris tunggal yang biasa digunakan adalah kira-kira seperti berikut:

  • Fungsi rentetan: beroperasi pada rentetan, seperti: TO_CHAR(), SUBSTR(), DECODE() dll.

  • Fungsi angka: melakukan pengiraan atau operasi pada nilai berangka dan mengembalikan nombor. Contohnya: ABS(), MOD(), ROUND(), dsb.

  • Fungsi penukaran: Tukar satu jenis data kepada jenis lain: contohnya: TO_CHAR(), TO_NUMBER(), TO_DATE(), dsb.

  • Fungsi tarikh: fungsi yang beroperasi pada masa dan tarikh. Contohnya: TRUNC(), SYSDATE(), ADD_MONTHS(), dsb.

2. Fungsi pengagregatan : Fungsi pengagregatan boleh beroperasi pada berbilang baris data pada masa yang sama dan mengembalikan hasil. Contohnya, SUM(x) mengembalikan jumlah lajur x dalam set hasil.

1. Fungsi rentetan

Fungsi aksara menerima parameter aksara, yang boleh menjadi lajur dalam jadual atau ungkapan rentetan.

Fungsi aksara yang biasa digunakan:

函数

说明

ASCII(X)

返回字符X的ASCII码

CONCAT(X,Y)

连接字符串X和Y

INSTR(X,STR[,START][,N)

从X中查找str,可以指定从start开始,也可以指定从n开始

LENGTH(X)

返回X的长度

LOWER(X)

X转换成小写

UPPER(X)

X转换成大写

LTRIM(X[,TRIM_STR])

把X的左边截去trim_str字符串,缺省截去空格

RTRIM(X[,TRIM_STR])

把X的右边截去trim_str字符串,缺省截去空格

TRIM([TRIM_STR  FROM]X)

把X的两边截去trim_str字符串,缺省截去空格

REPLACE(X,old,new)

在X中查找old,并替换成new

SUBSTR(X,start[,length])

返回X的字串,从start处开始,截取length个字符,缺省length,默认到结尾

Fungsi


Penerangan

示例

示例结果

SELECT ASCII('a') FROM dual;

97

SELECT CONCAT('Hello','world') FROM dual;

Helloworld

SELECT INSTR('Hello world','or') FROM dual;

8

SELECT LENGTH('Hello') FROM dual;

5

SELECT LOWER('Hello') FROM dual;

hello

SELECT UPPER('hello') FROM dual;

HELLO

SELECT LTRIM('=Hello=','=') FROM dual;

Hello=

SELECT RTRIM('=Hello=','=') FROM dual;

=Hello

SELECT TRIM('='FROM'=Hello=') FROM dual;

Hello

SELECT REPLACE('ABCDE','CD','AAA')FROM dual;

ABAAAE

SELECT SUBSTR('ABCDE',2,3) FROM dual;

BCD

ASCII(X)
Mengembalikan kod ASCII bagi aksara X
CONCAT(X,Y) Rentetan penggabungan X dan Y
INSTR(X,STR[,START][,N) Cari str daripada X, anda boleh tentukan bermula dari mula, atau anda boleh tentukan permulaan dari n Mula
LENGTH(X) Kembalikan panjang X td>
LOWER(X) X ditukar kepada huruf kecil
UPPER(X) X ditukar kepada huruf besar
LTRIM( X[,TRIM_STR ]) Potong rentetan trim_str dari sebelah kiri RTRIM(X[,TRIM_STR]) Potong rentetan trim_str di sebelah kanan X dan potong ruang secara lalai
TRIM([TRIM_STR FROM]X) Potong rentetan trim_str pada kedua-dua belah /tr>
REPLACE(X,lama,baharu) Cari lama dalam X dan gantikannya dengan yang baharu
SUBSTR(X,start[,length]) Returns rentetan X, bermula dari mula, memintas panjang Aksara, panjang lalai, lalai hingga akhir
Contoh fungsi di atas: ABAAE
Contoh Contoh hasil
PILIH ASCII('a') DARI dwi; 97
PILIH CONCAT('Hello', 'world') DARI dwi; Helloworld
PILIH INSTR('Hello world',' or') DARI dwi; 8
PILIH LENGTH('Hello') DARIPADA dwi; ') DARI dwi; hello
PILIH ATAS('hello') DARI dwi; HELLO
PILIH LTRIM('=Hello=','=') DARI dwi; Hello=
PILIH RTRIM('=Hello=','=') DARI dwi; =Hello
PILIH TRIM('='FROM'=Hello=') DARI dwi ; Helo
SELECT REPLACE('ABCDE','CD','AAA') DARI dwi;
PILIH SUBSTR('ABCDE',2,3) DARI dwi ; BCD

2. Fungsi angka

Fungsi angka menerima parameter angka, yang boleh datang dari lajur dalam jadual atau menjadi ungkapan angka.

函数

说明

示例

ABS(X)

X的绝对值

ABS(-3)=3

ACOS(X)

X的反余弦

ACOS(1)=0

COS(X)

余弦

COS(1)=0.54030230586814

CEIL(X)

大于或等于X的最小值

CEIL(5.4)=6

FLOOR(X)

小于或等于X的最大值

FLOOR(5.8)=5

LOG(X,Y)

X为底Y的对数

LOG(2,4)=2

MOD(X,Y)

X除以Y的余数

MOD(8,3)=2

POWER(X,Y)

X的Y次幂

POWER(2,3)=8

ROUND(X[,Y])

X在第Y位四舍五入

ROUND(3.456,2)=3.46

SQRT(X)

X的平方根

SQRT(4)=2

TRUNC(X[,Y])

X在第Y位截断

TRUNC(3.456,2)=3.45

Fungsi
Penerangan Contoh
ABS(X) Nilai mutlak X ABS(-3)=3
ACOS(X) Arccosine of Kosinus COS(1)=0.54030230586814
CEIL(X) Nilai minimum lebih besar daripada atau sama dengan X CEIL(5.4)=6
FLOOR(X) Nilai maksimum kurang daripada atau sama dengan X FLOOR(5.8)=5
LOG(X,Y) X ialah asas Y Logaritma LOG(2,4)=2
MOD( X,Y) Baki X dibahagikan dengan Y MOD(8, 3)=2 td>
KUASA(X,Y) X kepada kuasa Y KUASA(2, 3)=8
PUSINGAN(X[,Y]) X berada pada kedudukan ke-Y Membundarkan BULAT(3.456, 2)=3.46
SQRT (X) Punca kuasa dua bagi X SQRT(4)=2
TRUNC(X[,Y]) X dipotong pada kedudukan Y TRUNC(3.456, 2)=3.45

Arahan:

1.

Apabila y lalai digunakan, lalai y=0 contohnya: ROUND(3.56)=4.

y ialah integer positif, yang dibundarkan kepada y tempat perpuluhan. BULAT(5.654,2)=5.65.

y ialah integer negatif, dibundarkan kepada |y| di sebelah kiri titik perpuluhan. BULAT(351.654,-2)=400.

2. TRUNC(x[,y]), memintas terus tanpa membundar.

Apabila y lalai digunakan, lalai y=0 contohnya: TRUNC (3.56)=3.

Y ialah integer positif, yang dibundarkan kepada y tempat perpuluhan. TRUNC (5.654,2)=5.65.

y ialah integer negatif, dibundarkan kepada |y| di sebelah kiri titik perpuluhan. TRUNC (351.654,-2)=300.

3. Fungsi tarikh

Fungsi tarikh beroperasi pada tarikh. Fungsi tarikh yang biasa digunakan ialah:

1, ADD_MONTHS(d,n), tambah bilangan bulan n yang ditentukan pada tarikh tertentu d, dan kembalikan tarikh baharu yang dikira.

d mewakili tarikh, n mewakili bilangan bulan yang akan ditambah.

Contoh:

SELECT SYSDATE,add_months(SYSDATE,5) FROM dual;

2 LAST_DAY(d), mengembalikan hari terakhir bulan pada tarikh yang ditentukan .

Contoh:

SELECT SYSDATE,last_day(SYSDATE) FROM dual;

3 BULAT(d[,fmt]), mengembalikan format fmt Nilai tarikh bulat. , d ialah tarikh, fmt ialah format

model. Fmt lalai ialah DDD, iaitu hari dalam sebulan.

Ø ① Jika fmt ialah "TAHUN", ia dibundarkan kepada 1 Januari tahun tertentu, iaitu separuh pertama tahun itu dibuang dan separuh kedua tahun itu dianggap sebagai tahun berikutnya. tahun.

Ø ② Jika fmt ialah "BULAN", ia akan dibundarkan kepada 1 haribulan tertentu, iaitu, bulan sebelumnya akan dibundarkan, dan separuh kedua bulan itu akan dianggap sebagai bulan depan.

Ø ③ Lalai ialah "DDD", iaitu, hari tertentu dalam bulan itu, hari terdekat, separuh hari pertama dibuang dan separuh kedua hari itu dianggap sebagai hari berikutnya hari.

Ø ④ Jika fmt ialah "HARI", ia akan dibundarkan kepada Ahad minggu terdekat, iaitu separuh pertama minggu akan dibundarkan dan separuh kedua minggu itu akan digunakan sebagai hari Ahad minggu hadapan.

Contoh:

SELECT SYSDATE,ROUND(SYSDATE),ROUND(SYSDATE,'day'),
ROUND(SYSDATE,'month'),ROUND(SYSDATE,'year') FROM dual;

Fungsi yang sepadan dengan ROUND ialah TRUNC (d[,fmt]), yang beroperasi pada tarikh TRUNC sangat serupa ke ROUND , tetapi tarikh tidak dibundarkan dan dipintas terus ke hari pertama format yang sepadan.

4. EKSTRAK(fmt DARI d), ekstrak bahagian tarikh tertentu.

fmt ialah: TAHUN, BULAN, HARI, JAM, MINIT, KEDUA. Antaranya, YEAR, MONTH dan DAY boleh memadankan jenis DATE atau jenis TIMESTAMP tetapi HOUR, MINUTE dan SECOND mesti sepadan dengan jenis TIMESTAMP.

JAM Zon waktu tidak ditambahkan pada hasil yang sepadan, jadi keputusan yang dijalankan di China adalah 8 jam lebih kecil.

Contoh:

SELECT SYSDATE "date",
       EXTRACT(YEAR FROM SYSDATE)"year",
       EXTRACT(MONTH FROM SYSDATE)"month",
       EXTRACT(DAY FROM SYSDATE)"day",
       EXTRACT(HOUR FROM SYSTIMESTAMP)"hour",
       EXTRACT(MINUTE FROM SYSTIMESTAMP)"minute",
       EXTRACT(SECOND FROM SYSTIMESTAMP)"second"
FROM dual;

4 Fungsi penukaran

Fungsi penukaran menukar nilai daripada satu jenis. penukaran Jenis data kepada jenis data lain. Fungsi penukaran biasa ialah:

1, TO_CHAR(d|n[,fmt])

Tukar tarikh dan nombor kepada rentetan berformat. Fmt ialah rentetan terformat

Demonstrasi kod: TO_CHAR pemprosesan tarikh

SELECT TO_CHAR(SYSDATE,'YYYY"年"MM"月"DD"日" HH24:MI:SS')"date" FROM dual;

Analisis kod:

dalam pemformatan Dalam rentetan , gunakan petikan berganda untuk memetik aksara tidak berformat

Untuk pemformatan nombor, aksara pemformatan ialah:

Parameter

参数

示例

说明

9

999

指定位置处显示数字

.

9.9

指定位置返回小数点

,

99,99

指定位置返回一个逗号

$

9

数字开头返回一个美元符号

EEEE

9.99EEEE

科学计数法表示

L

L999

数字前加一个本地货币符号

PR

999PR

如果数字式负数则用尖括号进行表示

Contoh Penjelasan
9 999 Paparkan nombor pada kedudukan yang ditentukan
. 9.9 Kembalikan titik perpuluhan pada kedudukan yang ditentukan
, 99,99 Kembalikan koma pada kedudukan yang ditentukan
$ $999 Kembalikan tanda dolar di permulaan nombor
EEEE 9.99EEEE Notasi saintifik
L L999 sebelum nombor Tambah simbol mata wang tempatan
PR 999PR td> Jika nombornya negatif, gunakan kurungan sudut untuk menunjukkannya

代码演示:TO_CHAR对数字的处理

SELECT TO_CHAR(-123123.45,'L9.9EEEEPR')"date" FROM dual;

 

2、TO_DATE(X,[,fmt])

把一个字符串以fmt格式转换成一个日期类型

3、TO_NUMBER(X,[,fmt])

把一个字符串以fmt格式转换为一个数字

代码演示:TO_NUM函数

SELECT TO_NUMBER('-$12,345.67','$99,999.99')"num" FROM dual;

 

五、其它单行函数

1、NVL(X,VALUE)

如果X为空,返回value,否则返回X

例:对工资是2000元以下的员工,如果没发奖金,每人奖金100元

代码演示:NVL函数

SQL> SELECT ENAME,JOB,SAL,NVL(COMM,100) FROM EMP WHERE SAL<2000;
-------------------------------------------------------------------
ENAME    JOB    SAL    NVL(COMM,100) 
SMITH    CLERK    800    100 
ALLEN    SALESMAN    1600    300 
WARD    SALESMAN    1250    500 
MARTIN    SALESMAN    1250    1400 
TURNER    SALESMAN    1500    50 
ADAMS    CLERK    1100    100 
JAMES    CLERK    950    100 
-------------------------------------------------------------------
7 rows selected

2、NVL2(x,value1,value2)

如果x非空,返回value1,否则返回value2

例:对EMP表中工资为2000元以下的员工,如果没有奖金,则奖金为200元,如果有奖金,则在原来的奖金基础上加100元

代码演示:NVL2函数

SQL> SELECT ENAME,JOB,SAL,NVL2(COMM,comm+100,200) "comm"
2   FROM EMP WHERE SAL<2000;
-------------------------------------------------------------------
ENAME    JOB    SAL    comm 
SMITH    CLERK    800    200 
ALLEN    SALESMAN    1600    400 
WARD    SALESMAN    1250    600 
MARTIN    SALESMAN    1250    1500 
TURNER    SALESMAN    1500    150 
ADAMS    CLERK    1100    200 
JAMES    CLERK    950    200 
MILLER    CLERK    1300    200
-------------------------------------------------------------------------------------------------------
8 rows selected

六、聚合函数

聚合函数同时对一组数据进行操作,返回一行结果,比如计算一组数据的总和,平均值

等。

名称

作用

语法

AVG

平均值

AVG(表达式)

SUM

求和

SUM(表达式)

MIN、MAX

最小值、最大值

MIN(表达式)、MAX(表达式)

COUNT

数据统计

COUNT(表达式)

例:求本月所有员工的基本工资总和

代码演示:sum函数

SQL> SELECT SUM(sal) FROM emp;
-------------------------------------------------------------------
SUM(SAL)
29025

例:求不同部门的平均工资

代码演示:AVG函数下的分组查询

SQL> SELECT DEPTNO,AVG(SAL) FROM EMP GROUP BY DEPTNO;  
-------------------------------------------------------------------
DEPTNO    AVG(SAL)
---------    ----------
30    1566.66666
20     2175
10    2916.66666

推荐教程:《Oracle教程

Atas ialah kandungan terperinci Apakah fungsi oracle?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Perisian Oracle: Dari pangkalan data ke awanPerisian Oracle: Dari pangkalan data ke awanApr 15, 2025 am 12:09 AM

Sejarah pembangunan perisian Oracle dari pangkalan data ke pengkomputeran awan termasuk: 1. Bermula pada tahun 1977, ia pada mulanya memberi tumpuan kepada Sistem Pengurusan Pangkalan Data Relasi (RDBMS), dan dengan cepat menjadi pilihan pertama untuk aplikasi peringkat perusahaan; 2. Kembangkan ke middleware, alat pembangunan dan sistem ERP untuk membentuk satu set lengkap penyelesaian perusahaan; 3. Pangkalan Data Oracle menyokong SQL, menyediakan prestasi tinggi dan skalabiliti, sesuai untuk sistem perusahaan kecil dan besar; 4. Kebangkitan perkhidmatan pengkomputeran awan terus memperluaskan barisan produk Oracle untuk memenuhi semua aspek perusahaan yang diperlukan.

Mysql vs. Oracle: kebaikan dan keburukanMysql vs. Oracle: kebaikan dan keburukanApr 14, 2025 am 12:01 AM

Pemilihan MySQL dan Oracle hendaklah berdasarkan kos, prestasi, kerumitan dan keperluan fungsi: 1. MySQL sesuai untuk projek dengan belanjawan terhad, mudah dipasang, dan sesuai untuk aplikasi kecil dan sederhana. 2. Oracle sesuai untuk perusahaan besar dan melakukan yang cemerlang dalam mengendalikan data berskala besar dan permintaan serentak yang tinggi, tetapi mahal dan kompleks dalam konfigurasi.

Tujuan Oracle: Penyelesaian Perniagaan dan Pengurusan DataTujuan Oracle: Penyelesaian Perniagaan dan Pengurusan DataApr 13, 2025 am 12:02 AM

Oracle membantu perniagaan mencapai transformasi digital dan pengurusan data melalui produk dan perkhidmatannya. 1) Oracle menyediakan portfolio produk yang komprehensif, termasuk sistem pengurusan pangkalan data, sistem ERP dan CRM, membantu perusahaan mengautomasikan dan mengoptimumkan proses perniagaan. 2) Sistem ERP Oracle seperti E-BusinessSuite dan FusionApplications menyedari automasi proses perniagaan akhir-ke-akhir, meningkatkan kecekapan dan mengurangkan kos, tetapi mempunyai kos pelaksanaan dan penyelenggaraan yang tinggi. 3) OracLedatabase menyediakan pemprosesan data konkurensi tinggi dan ketersediaan yang tinggi, tetapi mempunyai kos pelesenan yang tinggi. 4) Pengoptimuman prestasi dan amalan terbaik termasuk penggunaan rasional pengindeksan dan teknologi pembahagian, penyelenggaraan pangkalan data biasa dan pematuhan dengan spesifikasi pengekodan.

Cara Menghapus Kegagalan Perpustakaan OracleCara Menghapus Kegagalan Perpustakaan OracleApr 12, 2025 am 06:21 AM

Langkah -langkah untuk memadam pangkalan data yang gagal selepas Oracle gagal membina perpustakaan: Gunakan nama pengguna sys untuk menyambung ke contoh sasaran. Gunakan pangkalan data drop untuk memadam pangkalan data. Pangkalan Data Permintaan v $ untuk mengesahkan bahawa pangkalan data telah dipadamkan.

Cara membuat kursor di Oracle LoopCara membuat kursor di Oracle LoopApr 12, 2025 am 06:18 AM

Di Oracle, gelung gelung boleh membuat kursor secara dinamik. Langkah -langkahnya ialah: 1. Tentukan jenis kursor; 2. Buat gelung; 3. Buat kursor secara dinamik; 4. Melaksanakan kursor; 5. Tutup kursor. Contoh: Kursor boleh dibuat kitaran demi litar untuk memaparkan nama dan gaji 10 pekerja teratas.

Cara Mengeksport Oracle ViewCara Mengeksport Oracle ViewApr 12, 2025 am 06:15 AM

Pandangan Oracle boleh dieksport melalui utiliti EXP: log masuk ke pangkalan data Oracle. Mulakan utiliti EXP, menentukan nama paparan dan direktori eksport. Masukkan parameter eksport, termasuk mod sasaran, format fail, dan ruang meja. Mula mengeksport. Sahkan eksport menggunakan utiliti IMPDP.

Cara Menghentikan Pangkalan Data OracleCara Menghentikan Pangkalan Data OracleApr 12, 2025 am 06:12 AM

Untuk menghentikan pangkalan data Oracle, lakukan langkah -langkah berikut: 1. Sambungkan ke pangkalan data; 2. Shutdown segera; 3. Shutdown membatalkan sepenuhnya.

Apa yang perlu dilakukan sekiranya log oracle penuhApa yang perlu dilakukan sekiranya log oracle penuhApr 12, 2025 am 06:09 AM

Apabila fail log Oracle penuh, penyelesaian berikut boleh diterima pakai: 1) fail log lama bersih; 2) meningkatkan saiz fail log; 3) meningkatkan kumpulan fail log; 4) menyediakan pengurusan log automatik; 5) mengukuhkan pangkalan data. Sebelum melaksanakan sebarang penyelesaian, adalah disyorkan untuk membuat sandaran pangkalan data untuk mengelakkan kehilangan data.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Persekitaran pembangunan bersepadu PHP yang berkuasa

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

Versi Mac WebStorm

Versi Mac WebStorm

Alat pembangunan JavaScript yang berguna