Tajuk ditulis semula sebagai: terjemahan Bahasa Inggeris "Sisipkan (PILIH & NILAI) bersama-sama"
P粉536532781
P粉536532781 2023-08-24 16:36:32
0
2
480

Saya cuba memasukkan data ke dalam jadual, saya tahu dua cara:

Salah satunya ialah menambah baris sebagai nilai:

MASUKKAN KE DALAM db_example.tab_example (id,nama,nama keluarga,kumpulan) NILAI ('','Tom','Hanks','1');

Lainnya ialah memasukkan daripada jadual lain:

MASUKKAN KE DALAM db_example.tab_example (id,nama,nama keluarga) PILIH ID, nama_pertama, nama_keluarga DARI db_contacts.tab_mygroup;

Tetapi bagaimana jika saya mahu memasukkan beberapa nilai secara serentak daripada jadual lain (kaedah kedua) dan secara manual memasukkan beberapa nilai lalai (kaedah pertama).

Inilah yang saya cuba (tidak berjaya):

MASUKKAN KE DALAM db_example.tab_example (id,nama,nama keluarga,kumpulan) NILAI ( PILIH ID DARIPADA db_contacts.tab_mygroup, PILIH nama_pertama DARI db_contacts.tab_mygroup, PILIH nama akhir DARI db_contacts.tab_mygroup, '1' ); 

Saya terfikir untuk mencipta jadual paparan dan itu mungkin berjaya, tetapi saya fikir mungkin ada cara untuk menambah kedua-duanya.

Terima kasih semua! Harap saya menerangkan dengan jelas apa yang saya perlukan :)

P粉536532781
P粉536532781

membalas semua (2)
P粉980815259

Cuba ini

INSERT INTO db_example.tab_example (id,name,surname) SELECT id,first_name,'M. Nega' FROM db_contacts.tab_mygroup

Anda boleh menggunakan klausa join dalam FROM. Ia sepatutnya berkesan!

    P粉373596828

    Hanya kembalikan nilai literal daripada pernyataan SELECT; Contohnya:

    INSERT INTO db_example.tab_example (id,name,surname,group) SELECT ID , first_name , last_name , '1' AS group FROM db_contacts.tab_mygroup;

    Susulan

    S:Bolehkah saya menggunakan fungsi AS untuk memilih first_name dan last_name dalam lajur yang sama? Atau adakah saya memerlukan fungsi lain?

    Jawapan:Jika anda ingin menggabungkan nilaifirst_namelast_nameke dalam satu lajur, anda boleh menyertainya menggunakan ungkapan dan menggunakan ungkapan itu dalam senarai PILIH, seperti

    CONCAT(last_name,', ',first_name')

    atau

    CONCAT(first_name,' ',last_name)
    Ini tidak akan memberi kesan dalam konteks

    AS关键字在INSERT ... SELECT, tetapi memberikan ungkapan alias yang sepadan dengan nama lajur yang disisipkan boleh membantu pembaca akan datang.

    INSERT INTO db_example.tab_example (id,name,surname,group,full_name) SELECT ID , first_name , last_name , '1' AS group , CONCAT(first_name,' ',last_name) AS full_name FROM db_contacts.tab_mygroup
      Muat turun terkini
      Lagi>
      kesan web
      Kod sumber laman web
      Bahan laman web
      Templat hujung hadapan
      Tentang kita Penafian Sitemap
      Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!