Melaksanakan Pertanyaan DB Berdasarkan Data daripada Pangkalan Data Berbeza
Untuk melaksanakan pertanyaan dalam satu pangkalan data berdasarkan hasil pertanyaan daripada yang lain pangkalan data, pelbagai pendekatan boleh digunakan:
Cari Transformasi
Dengan menambahkan Transformasi Carian, anda boleh mendapatkan semula senarai ID daripada pangkalan data pertama. Pertanyaan dalam Carian mesti mengembalikan lajur ID. Walaupun kaedah ini menyediakan nilai carian, kaedah ini tidak menapis baris berdasarkan ID yang diperolehi.
Untuk menapis baris dengan keadaan IN, gunakan pilihan output ralat Carian:
Tugas Skrip
Untuk mengelakkan memuatkan semua data, gunakan Tugasan Skrip. Teknik ini beroperasi dalam ingatan dan boleh mencipta senarai ID yang dipisahkan koma untuk perbandingan IN. Perintah SQL yang terhasil disimpan dalam pembolehubah dan digunakan sebagai sumber untuk operasi seterusnya.
Laksanakan Tugasan SQL
Menggunakan Tugasan SQL Laksanakan, bina klausa IN secara dinamik . Pertanyaan menjana set hasil tunggal yang mengandungi perintah SQL yang diubah suai dengan ID yang dipisahkan koma. Set hasil ini berfungsi sebagai sumber untuk Tugasan DataFlow berikutnya.
Pertimbangkan pengendalian jenis data, terutamanya apabila berurusan dengan nilai rentetan. Sertakan nilai rentetan dalam petikan tunggal untuk mengelakkan kelemahan suntikan SQL. Selain itu, pastikan sifat Pengesahan Kelewatan Tugasan DataFlow ditetapkan kepada Benar untuk pelaksanaan pertanyaan dinamik yang betul.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Pertanyaan Pangkalan Data Berdasarkan Keputusan daripada Pangkalan Data Lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!