Bagaimana saya bisa menambahkan beberapa nilai baris di mysql?

Kita dapat menggunakan pernyataan SQL INSERT_ untuk menyisipkan baris ke dalam tabel. Kita juga bisa menggunakannya untuk menyisipkan lebih dari satu baris

Show

Di bawah ini adalah tujuh cara untuk memasukkan banyak baris ke dalam tabel di SQL. Sebagian besar contoh ini harus bekerja di RDBMS utama, dengan kemungkinan pengecualian Oracle. Tapi jangan khawatir, saya telah menyertakan contoh hanya untuk Oracle

Gunakan Beberapa Pernyataan INSERT

Salah satu cara untuk menyisipkan banyak baris adalah dengan menggunakan pernyataan INSERT terpisah untuk setiap baris

INSERT INTO Pets (PetId, PetTypeId, OwnerId, PetName, DOB)
VALUES ( 1, 2, 3, 'Fluffy', '2020-11-20' );

INSERT INTO Pets (PetId, PetTypeId, OwnerId, PetName, DOB)
VALUES ( 2, 3, 3, 'Fetch', '2019-08-16' );

INSERT INTO Pets (PetId, PetTypeId, OwnerId, PetName, DOB)
VALUES ( 3, 2, 2, 'Scratch', '2018-10-01' );

Di sini, kami menyisipkan tiga baris ke dalam tabel bernama

INSERT INTO Pets (PetId, PetTypeId, OwnerId, PetName, DOB)
VALUES
    (1, 2, 3, 'Fluffy', '2020-11-20'),
    (2, 3, 3, 'Fetch', '2019-08-16'),
    (3, 2, 2, 'Scratch', '2018-10-01');
0. Setiap baris memiliki pernyataan INSERT sendiri

Berikan Semua Data dalam INSERT INTO Pets (PetId, PetTypeId, OwnerId, PetName, DOB) VALUES (1, 2, 3, 'Fluffy', '2020-11-20'), (2, 3, 3, 'Fetch', '2019-08-16'), (3, 2, 2, 'Scratch', '2018-10-01');2 Klausul

Di sebagian besar RDBMS utama (kecuali Oracle), kami dapat mengirimkan data untuk banyak baris dalam satu klausa

INSERT INTO Pets (PetId, PetTypeId, OwnerId, PetName, DOB)
VALUES
    (1, 2, 3, 'Fluffy', '2020-11-20'),
    (2, 3, 3, 'Fetch', '2019-08-16'),
    (3, 2, 2, 'Scratch', '2018-10-01');
2

INSERT INTO Pets (PetId, PetTypeId, OwnerId, PetName, DOB)
VALUES
    (1, 2, 3, 'Fluffy', '2020-11-20'),
    (2, 3, 3, 'Fetch', '2019-08-16'),
    (3, 2, 2, 'Scratch', '2018-10-01');
_

Di sini, kami menggunakan satu pernyataan INSERT_, dengan setiap data baris dipisahkan dengan koma

Menggabungkan Baris dengan INSERT INTO Pets (PetId, PetTypeId, OwnerId, PetName, DOB) VALUES (1, 2, 3, 'Fluffy', '2020-11-20'), (2, 3, 3, 'Fetch', '2019-08-16'), (3, 2, 2, 'Scratch', '2018-10-01');_5 Pernyataan dan INSERT INTO Pets (PetId, PetTypeId, OwnerId, PetName, DOB) VALUES (1, 2, 3, 'Fluffy', '2020-11-20'), (2, 3, 3, 'Fetch', '2019-08-16'), (3, 2, 2, 'Scratch', '2018-10-01');6 Operator

Jika DBMS Anda tidak mendukung metode di atas untuk menyisipkan banyak baris dalam satu pernyataan INSERT, coba metode ini

INSERT INTO Pets ( PetId, PetTypeId, OwnerId, PetName, DOB )
    SELECT 1, 2, 3, 'Fluffy', '2020-11-20'
    UNION ALL
    SELECT 2, 3, 3, 'Fetch', '2019-08-16'
    UNION ALL
    SELECT 3, 2, 2, 'Scratch', '2018-10-01';

Di sini, kami memilih setiap baris dengan pernyataan

INSERT INTO Pets (PetId, PetTypeId, OwnerId, PetName, DOB)
VALUES
    (1, 2, 3, 'Fluffy', '2020-11-20'),
    (2, 3, 3, 'Fetch', '2019-08-16'),
    (3, 2, 2, 'Scratch', '2018-10-01');
8, lalu menggunakan operator
INSERT INTO Pets (PetId, PetTypeId, OwnerId, PetName, DOB)
VALUES
    (1, 2, 3, 'Fluffy', '2020-11-20'),
    (2, 3, 3, 'Fetch', '2019-08-16'),
    (3, 2, 2, 'Scratch', '2018-10-01');
6 untuk menggabungkan baris tersebut dengan baris berikutnya

Masukkan Banyak Baris di Oracle

Contoh pernyataan tunggal-INSERT di atas tidak akan berfungsi dengan Oracle Database (setidaknya, tidak pada saat penulisan). Kita masih bisa menggunakan beberapa pernyataan INSERT_ untuk menyisipkan banyak baris di Oracle, tetapi jika kita ingin melakukannya dalam satu pernyataan INSERT, kita perlu menggunakan sintaks yang berbeda

Berikut adalah contoh menyisipkan banyak baris di Oracle

INSERT INTO Products (ProductId, ProductName, Price) 
    WITH p AS ( 
        SELECT 1, 'Left Handed Screwdriver', 10.50 FROM dual UNION ALL 
        SELECT 2, 'Right Handed Screwdriver', 22.75 FROM dual UNION ALL 
        SELECT 3, 'Bottomless Coffee Cup (4 pack)', 15.00 FROM dual UNION ALL 
        SELECT 4, 'Urban Dictionary Version 2.3', 75 FROM dual UNION ALL
        SELECT 5, 'Beer Water', 15 FROM dual
  )
SELECT * FROM p;

Ini hanyalah salah satu dari setidaknya empat cara untuk menyisipkan banyak baris di Oracle

Gunakan Pernyataan INSERT INTO Pets ( PetId, PetTypeId, OwnerId, PetName, DOB ) SELECT 1, 2, 3, 'Fluffy', '2020-11-20' UNION ALL SELECT 2, 3, 3, 'Fetch', '2019-08-16' UNION ALL SELECT 3, 2, 2, 'Scratch', '2018-10-01';_3

Kita dapat menggunakan pernyataan

INSERT INTO Pets ( PetId, PetTypeId, OwnerId, PetName, DOB )
    SELECT 1, 2, 3, 'Fluffy', '2020-11-20'
    UNION ALL
    SELECT 2, 3, 3, 'Fetch', '2019-08-16'
    UNION ALL
    SELECT 3, 2, 2, 'Scratch', '2018-10-01';
_4 untuk menyisipkan hasil kueri ke dalam tabel baru

CREATE TABLE Pets2 AS
(SELECT * FROM Pets);

Ini membuat tabel baru bernama

INSERT INTO Pets ( PetId, PetTypeId, OwnerId, PetName, DOB )
    SELECT 1, 2, 3, 'Fluffy', '2020-11-20'
    UNION ALL
    SELECT 2, 3, 3, 'Fetch', '2019-08-16'
    UNION ALL
    SELECT 3, 2, 2, 'Scratch', '2018-10-01';
_5 (dengan definisi yang sama dengan
INSERT INTO Pets ( PetId, PetTypeId, OwnerId, PetName, DOB )
    SELECT 1, 2, 3, 'Fluffy', '2020-11-20'
    UNION ALL
    SELECT 2, 3, 3, 'Fetch', '2019-08-16'
    UNION ALL
    SELECT 3, 2, 2, 'Scratch', '2018-10-01';
6), dan menyisipkan hasil kueri ke dalamnya

Standar SQL memerlukan tanda kurung di sekitar klausa subkueri, tetapi mungkin bersifat opsional di DBMS Anda (misalnya PostgreSQL)

Gunakan Pernyataan INSERT INTO Pets ( PetId, PetTypeId, OwnerId, PetName, DOB ) SELECT 1, 2, 3, 'Fluffy', '2020-11-20' UNION ALL SELECT 2, 3, 3, 'Fetch', '2019-08-16' UNION ALL SELECT 3, 2, 2, 'Scratch', '2018-10-01';_7

Dalam DBMS seperti SQL Server dan PostgreSQL, kami memiliki opsi untuk menggunakan pernyataan

INSERT INTO Pets ( PetId, PetTypeId, OwnerId, PetName, DOB )
    SELECT 1, 2, 3, 'Fluffy', '2020-11-20'
    UNION ALL
    SELECT 2, 3, 3, 'Fetch', '2019-08-16'
    UNION ALL
    SELECT 3, 2, 2, 'Scratch', '2018-10-01';
7 sebagai pengganti pernyataan
INSERT INTO Pets ( PetId, PetTypeId, OwnerId, PetName, DOB )
    SELECT 1, 2, 3, 'Fluffy', '2020-11-20'
    UNION ALL
    SELECT 2, 3, 3, 'Fetch', '2019-08-16'
    UNION ALL
    SELECT 3, 2, 2, 'Scratch', '2018-10-01';
4

SELECT * INTO Pets2
FROM Pets;

Contoh ini melakukan hal yang sama seperti yang sebelumnya – ini membuat tabel baru bernama

INSERT INTO Pets ( PetId, PetTypeId, OwnerId, PetName, DOB )
    SELECT 1, 2, 3, 'Fluffy', '2020-11-20'
    UNION ALL
    SELECT 2, 3, 3, 'Fetch', '2019-08-16'
    UNION ALL
    SELECT 3, 2, 2, 'Scratch', '2018-10-01';
5 dan menyisipkan konten
INSERT INTO Pets ( PetId, PetTypeId, OwnerId, PetName, DOB )
    SELECT 1, 2, 3, 'Fluffy', '2020-11-20'
    UNION ALL
    SELECT 2, 3, 3, 'Fetch', '2019-08-16'
    UNION ALL
    SELECT 3, 2, 2, 'Scratch', '2018-10-01';
6 ke dalamnya

MariaDB mendukung sintaks ini, tetapi menyisipkan set hasil ke dalam variabel. Di Oracle, ini memberikan nilai yang dipilih ke variabel atau koleksi. MySQL dan SQLite tidak mendukung pernyataan

INSERT INTO Pets ( PetId, PetTypeId, OwnerId, PetName, DOB )
    SELECT 1, 2, 3, 'Fluffy', '2020-11-20'
    UNION ALL
    SELECT 2, 3, 3, 'Fetch', '2019-08-16'
    UNION ALL
    SELECT 3, 2, 2, 'Scratch', '2018-10-01';
7 sama sekali

Gunakan Pernyataan INSERT INTO Products (ProductId, ProductName, Price) WITH p AS ( SELECT 1, 'Left Handed Screwdriver', 10.50 FROM dual UNION ALL SELECT 2, 'Right Handed Screwdriver', 22.75 FROM dual UNION ALL SELECT 3, 'Bottomless Coffee Cup (4 pack)', 15.00 FROM dual UNION ALL SELECT 4, 'Urban Dictionary Version 2.3', 75 FROM dual UNION ALL SELECT 5, 'Beer Water', 15 FROM dual ) SELECT * FROM p;_3

Cara lain untuk menyisipkan banyak baris ke dalam tabel dari kueri adalah dengan pernyataan

INSERT INTO Products (ProductId, ProductName, Price) 
    WITH p AS ( 
        SELECT 1, 'Left Handed Screwdriver', 10.50 FROM dual UNION ALL 
        SELECT 2, 'Right Handed Screwdriver', 22.75 FROM dual UNION ALL 
        SELECT 3, 'Bottomless Coffee Cup (4 pack)', 15.00 FROM dual UNION ALL 
        SELECT 4, 'Urban Dictionary Version 2.3', 75 FROM dual UNION ALL
        SELECT 5, 'Beer Water', 15 FROM dual
  )
SELECT * FROM p;
3

INSERT INTO Pets2
SELECT * FROM Pets;

Namun, metode ini mengharuskan tabel sudah ada. Oleh karena itu, sebelum menjalankan kode tersebut, kita perlu membuat tabel

INSERT INTO Pets ( PetId, PetTypeId, OwnerId, PetName, DOB )
    SELECT 1, 2, 3, 'Fluffy', '2020-11-20'
    UNION ALL
    SELECT 2, 3, 3, 'Fetch', '2019-08-16'
    UNION ALL
    SELECT 3, 2, 2, 'Scratch', '2018-10-01';
5 terlebih dahulu

Bagaimana saya bisa menambahkan beberapa nilai baris dalam SQL?

permintaan INSERT-SELECT-UNION untuk menyisipkan beberapa catatan . Kueri SQL UNION membantu memilih semua data yang telah dilampirkan oleh kueri SELECT melalui pernyataan INSERT.

Bagaimana cara menambahkan banyak nilai dalam satu kolom di MySQL?

Dalam hal ini, kita menggunakan fungsi GROUP_CONCAT untuk menggabungkan beberapa baris menjadi satu kolom . GROUP_CONCAT menggabungkan semua nilai non-null dalam grup dan mengembalikannya sebagai string tunggal. Jika Anda ingin menghindari duplikat, Anda juga dapat menambahkan DISTINCT dalam kueri Anda.

Bagaimana cara menambahkan nilai baris di MySQL?

Saat memasukkan satu baris ke dalam tabel MySQL, sintaksnya adalah sebagai berikut. INSERT INTO table_name(column_1,column_2,column_3) VALUES (value_1,value_2,value_3); Dalam kueri INSERT INTO, Anda harus menentukan informasi berikut. table_name. Tabel MySQL yang ingin Anda tambahkan baris baru.

Bagaimana cara menambahkan 3 baris dalam SQL?

Jika Anda ingin menambahkan data ke tabel SQL Anda, maka Anda dapat menggunakan pernyataan INSERT. Berikut adalah sintaks dasar untuk menambahkan baris ke tabel SQL Anda. INSERT INTO table_name (column1, column2, column3,etc) VALUES (nilai1, nilai2, nilai3, dll); Baris kode kedua adalah tempat Anda akan .