MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

Bagaimana Fungsi INSERT() Bekerja di MariaDB

Di MariaDB, INSERT() adalah fungsi string bawaan yang memungkinkan Anda memasukkan substring ke string lain.

Sintaks

Sintaksnya seperti ini:

INSERT(str,pos,len,newstr)

Dimana str adalah string, pos adalah posisi awal untuk memasukkan, len adalah jumlah karakter yang akan diganti, dan newstr adalah substring yang akan disisipkan.

Contoh

Berikut ini contoh dasarnya:

SELECT INSERT('The hot sun', 5, 3, 'red');

Hasil:

+------------------------------------+
| INSERT('The hot sun', 5, 3, 'red') |
+------------------------------------+
| The red sun                        |
+------------------------------------+

Disini saya mengganti kata hot dengan kata red .

Di bawah ini adalah lebih banyak contoh untuk menunjukkan bagaimana argumen posisi dan panjang dapat memengaruhi hasil.

SELECT 
    INSERT('The hot sun', 5, 0, 'red ') AS "1",
    INSERT('The hot sun', 5, 3, 'black hole') AS "2",
    INSERT('The hot sun', 1, 7, 'Black hole') AS "3";

Hasil:

+-----------------+--------------------+----------------+
| 1               | 2                  | 3              |
+-----------------+--------------------+----------------+
| The red hot sun | The black hole sun | Black hole sun |
+-----------------+--------------------+----------------+

Posisi Awal Salah

Jika posisi awal berada di luar panjang string, string asli dikembalikan.

SELECT 
    INSERT('The hot sun', 0, 3, 'red ') AS "1",
    INSERT('The hot sun', -5, 3, 'red') AS "2",
    INSERT('The hot sun', 20, 3, 'red') AS "3";

Hasil:

+-------------+-------------+-------------+
| 1           | 2           | 3           |
+-------------+-------------+-------------+
| The hot sun | The hot sun | The hot sun |
+-------------+-------------+-------------+

Argumen Panjang

Jika panjangnya (argumen ketiga) sama panjangnya, atau lebih panjang dari sisa string, sisa string diganti dengan substring.

Contoh:

SELECT 
    INSERT('The hot sun', 5, 10, 'red ') AS "1",
    INSERT('The hot sun', 9, 3, 'pavement') AS "2",
    INSERT('The hot sun', 9, 4, 'pavement') AS "3",
    INSERT('The hot sun', 1, 20, 'red') AS "4";

Hasil:

+----------+------------------+------------------+------+
| 1        | 2                | 3                | 4    |
+----------+------------------+------------------+------+
| The red  | The hot pavement | The hot pavement | red  |
+----------+------------------+------------------+------+

Argumen Null

Memberikan null untuk salah satu argumen menghasilkan null :

SELECT 
    INSERT(null, 5, 10, 'red ') AS "1",
    INSERT('The hot sun', null, 3, 'pavement') AS "2",
    INSERT('The hot sun', 9, null, 'pavement') AS "3",
    INSERT('The hot sun', 1, 20, null) AS "4";

Hasil:

+------+------+------+------+
| 1    | 2    | 3    | 4    |
+------+------+------+------+
| NULL | NULL | NULL | NULL |
+------+------+------+------+

Menyediakan Jumlah Argumen yang Salah

Memanggil INSERT() dengan jumlah argumen yang salah, atau tanpa memberikan argumen apa pun menghasilkan kesalahan:

SELECT INSERT();

Hasil:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengimpor Partisi InnoDB di MariaDB 10.0/10.1

  2. MariaDB BENCHMARK() Dijelaskan

  3. Cara Melakukan Perubahan Skema di MySQL &MariaDB dengan Cara yang Aman

  4. Bagaimana NVL() Bekerja di MariaDB

  5. Cara Menambahkan AM/PM ke Nilai Waktu atau Datetime di MariaDB