Pass R Variable to RODBC's sqlQuery
Dalam pakej RODBC, menghantar pembolehubah R ke fungsi sqlQuery mendayakan pelaksanaan pertanyaan dinamik. Begini cara untuk mencapai ini untuk pelbagai senario:
Fungsi Bernilai Skalar/Jadual dan Prosedur Tersimpan
Untuk menghantar pembolehubah kepada fungsi skalar/bernilai jadual atau disimpan prosedur, gunakan fungsi tampal() untuk membina rentetan pertanyaan. Contohnya:
x <- 1 example <- sqlQuery(myDB, paste("SELECT * FROM dbo.my_table_fn (", x, ")"))
WHERE Klausa
Untuk menghantar pembolehubah kepada klausa WHERE pernyataan SELECT, gunakan fungsi sprintf() :
example2 <- sqlQuery(myDB, sprintf("SELECT * FROM dbo.some_random_table AS foo WHERE foo.ID = %d", x))
Prosedur Tersimpan Pelaksanaan
Untuk melaksanakan prosedur tersimpan dengan argumen, gunakan sprintf:
example3 <- sqlQuery(myDB, sprintf("EXEC dbo.my_stored_proc (%d)", x))
Dengan membina rentetan pertanyaan secara dinamik, anda boleh menghantar pembolehubah R sebagai argumen kepada fungsi dan pernyataan SQL .
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melepasi Pembolehubah R ke Pertanyaan SQL Menggunakan Fungsi sqlQuery RODBC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!