PostgreSQL

Sisipkan Baris jika Nilai Belum Ada di Postgresl

Sisipkan Baris jika Nilai Belum Ada di Postgresl

Mengetahui dan memanipulasi sistem manajemen basis data telah membuat kami terbiasa dengan perubahan tentang basis data. Yang biasanya melibatkan membuat, menyisipkan, memperbarui, dan menghapus fungsi yang diterapkan pada tabel tertentu. Dalam artikel saat ini, kita akan melihat bagaimana data dikelola dengan metode penyisipan. Kita harus membuat tabel di mana kita ingin penyisipan. Menyisipkan pernyataan digunakan untuk penambahan data baru di baris tabel. Pernyataan sisipan PostgreSQL mencakup beberapa aturan untuk keberhasilan eksekusi kueri. Pertama kita harus menyebutkan nama tabel diikuti dengan nama kolom (atribut) tempat kita ingin menyisipkan baris row. Kedua, kita harus memasukkan nilai, dipisahkan dengan koma setelah klausa VALUE. Akhirnya, setiap nilai harus dalam urutan yang sama dengan urutan daftar atribut yang disediakan saat membuat tabel tertentu.

Sintaksis

>> INSERT INTO TABLENAME (column1, column) VALUES ('value1', 'value2');

Di sini, kolom adalah atribut dari tabel. Kata kunci VALUE digunakan untuk memasukkan nilai. 'Nilai' adalah data tabel yang akan dimasukkan.

Memasukkan fungsi baris di shell PostgreSQL (psql)

Setelah instalasi postgresql berhasil, kita akan memasukkan nama database, nomor port, dan kata sandi. Psql akan dimulai. Kami kemudian akan melakukan kueri masing-masing.

Contoh 1: Menggunakan INSERT untuk menambahkan data baru ke tabel
Mengikuti sintaks, kami akan membuat kueri berikut:. Untuk menyisipkan baris dalam tabel, kita akan membuat tabel bernama "pelanggan". Tabel masing-masing berisi 3 kolom. Tipe data kolom tertentu harus disebutkan untuk memasukkan data di kolom itu dan untuk menghindari redundansi. Query untuk membuat tabel adalah:

>> buat tabel pelanggan (id int, nama varchar (40), varchar negara (40));

Setelah membuat tabel, sekarang kita akan memasukkan data dengan menyisipkan baris secara manual di kueri terpisah. Pertama, kami menyebutkan nama kolom untuk menjaga keakuratan data pada kolom tertentu mengenai atribut. Dan kemudian, nilai akan dimasukkan. Nilai dikodekan dengan koma tunggal, karena harus dimasukkan tanpa perubahan apa pun.

>> masukkan ke nilai pelanggan (id, nama, negara) ('1',' Alia','Pakistan');

Setelah setiap penyisipan yang berhasil, outputnya akan menjadi “0   1”, yang berarti bahwa 1 baris dimasukkan dalam satu waktu. Dalam kueri seperti yang disebutkan sebelumnya, kami telah memasukkan data 4 kali. Untuk melihat hasilnya, kita akan menggunakan query berikut:

>> pilih * dari pelanggan;

Contoh 2: Menggunakan pernyataan INSERT dalam menambahkan beberapa baris dalam satu kueri
Pendekatan yang sama digunakan dalam memasukkan data tetapi tidak memasukkan pernyataan penyisipan berkali-kali. Kami akan memasukkan data sekaligus dengan menggunakan kueri tertentu; semua nilai dari satu baris dipisahkan oleh "Dengan menggunakan kueri berikut, kami akan mencapai output yang diperlukan

Contoh 3: MASUKKAN beberapa baris dalam satu tabel berdasarkan angka di tabel lain
Contoh ini berkaitan dengan penyisipan data dari satu tabel ke tabel lainnya. Pertimbangkan dua tabel, "a" dan "b". Tabel “a” memiliki 2 atribut, i.e., nama dan kelas. Dengan menerapkan kueri CREATE, kami akan memperkenalkan tabel. Setelah pembuatan tabel, data akan dimasukkan dengan menggunakan query insert.

>> buat tabel a (nama varchar (30), kelas varchar (40));
>> Masukkan nilai ('amna', 1), ('bisma','2'), ('javed','3'), ('maha','4');

Empat nilai dimasukkan ke dalam tabel menggunakan teori melebihi exceeding.  Kami dapat memeriksa dengan menggunakan pernyataan pilih.

Demikian pula, kami akan membuat tabel "b," memiliki atribut dari semua nama dan mata pelajaran. 2 kueri yang sama akan diterapkan untuk menyisipkan dan mengambil catatan dari tabel yang sesuai.

>> buat tabel b(semua nama varchar(30), subjek varchar(70));

Ambil catatan dengan teori pilihan.

>> pilih * dari b;

Untuk menyisipkan nilai tabel b dalam tabel, kami akan menggunakan kueri berikut:. Kueri ini akan bekerja sedemikian rupa sehingga semua nama dalam tabel b akan dimasukkan ke dalam tabel Sebuah dengan penghitungan angka yang menunjukkan jumlah kemunculan angka tertentu di kolom masing-masing tabel b. “b.allnames” mewakili fungsi objek untuk menentukan tabel. Hitung (b.allnames) berfungsi untuk menghitung total kejadian. Karena setiap nama muncul sekaligus, kolom yang dihasilkan akan memiliki 1 nomor.

>> Masukkan ke dalam (nama, kelas) pilih b.semua nama, hitung (b.allnames) dari grup b oleh b.semua nama;

Contoh 4: MASUKKAN data dalam baris jika tidak ada
Kueri ini digunakan untuk memasukkan baris jika tidak ada. Pertama, kueri yang disediakan memeriksa apakah baris sudah ada atau tidak. Jika sudah ada, maka data tidak ditambahkan. Dan jika data tidak ada berturut-turut, penyisipan baru akan diadakan. Di sini tmp adalah variabel sementara yang digunakan untuk menyimpan data selama beberapa waktu.

>> masukkan ke b (semua nama, subjek) pilih * dari (pilih 'Kinza' sebagai semua nama, 'islamiat' sebagai subjek) sebagai tmp jika tidak ada ( pilih semua nama dari b di mana semua nama ='sundus' limit 1);

Contoh 5: PostgreSQL Upsert Menggunakan Pernyataan INSERT
Fungsi ini memiliki dua jenis:

Awalnya, kami akan membentuk tabel dengan beberapa data sampel.

>> CREATE TABLE tbl2 (ID INT PRIMARY KEY, NAMA KARAKTER BERVARIASI);

Setelah membuat tabel kita akan memasukkan data di tbl2 dengan menggunakan query:

>> MASUKKAN KE tbl2 NILAI (1,'uzma'), (2,'abdul'), (3,'Hamna'), (4,'fatima'), (5,'shiza'), (6,' javeria');

Jika terjadi konflik, Perbarui:

>>INSERT INTO tbl2 VALUES (8,'Rida') ON CONFLICT (ID) DO UPDATE SET Name= Tidak termasuk.Nama;

Pertama, kita akan memasukkan data menggunakan query konflik id 8 dan nama Rida. Kueri yang sama akan digunakan mengikuti id yang sama; namanya akan diganti. Sekarang Anda akan melihat bagaimana nama akan diubah pada id yang sama di tabel.

>> INSERT INTO tbl2 VALUES (8,'Mahi') PADA CONFLICT (ID) DO UPDATE SET Name = Excluded.Nama;

Kami telah menemukan bahwa ada konflik pada id "8", sehingga baris yang ditentukan diperbarui.

Jika terjadi konflik, jangan lakukan apa-apa

>> MASUKKAN KE NILAI tbl2 (9,'Hira') PADA KONFLIK (ID) TIDAK APA-APA;

Menggunakan kueri ini, baris baru dimasukkan. Setelah itu, kami akan menggunakan jika permintaan yang sama untuk melihat konflik yang terjadi.

>>MASUKKAN KE NILAI tbl2 (9,'Hira') PADA KONFLIK (ID) TIDAK APA-APA;

Menurut gambar di atas, Anda akan melihat bahwa setelah eksekusi kueri "INSERT 0 0" tidak ada data yang dimasukkan.

Kesimpulan

Kami telah melihat sekilas konsep pemahaman menyisipkan baris dalam tabel di mana data tidak ada, atau penyisipan tidak selesai, jika ada catatan yang ditemukan, untuk mengurangi redundansi dalam hubungan basis data.

5 Game Arkade Terbaik untuk Linux
Saat ini, komputer adalah mesin serius yang digunakan untuk bermain game. Jika Anda tidak bisa mendapatkan skor tinggi baru, Anda akan tahu apa yang s...
Pertempuran Untuk Wesnoth 1.13.6 Pengembangan Dirilis
Pertempuran Untuk Westnoth 1.13.6 dirilis bulan lalu, adalah rilis pengembangan keenam dalam 1.13.x series dan memberikan sejumlah peningkatan, teruta...
Cara Menginstal League Of Legends di Ubuntu 14.04
Jika Anda adalah penggemar League of Legends, maka ini adalah kesempatan bagi Anda untuk menguji coba League of Legends. Perhatikan bahwa LOL didukung...