Tôi đã cố viết một tập lệnh R để truy vấn cơ sở dữ liệu Impala. Đây là truy vấn vào cơ sở dữ liệu:RODBC ERROR: Không thể SQLExecDirect trong mysql
select columnA, max(columnB) from databaseA.tableA where columnC in (select distinct(columnC) from databaseB.tableB) group by columnA order by columnA
Khi tôi chạy truy vấn này theo cách thủ công (đọc: bên ngoài Rscript qua vỏ bọc), tôi có thể lấy nội dung bảng. Tuy nhiên, khi cùng được thử qua tập lệnh R, tôi nhận được lỗi sau:
[1] "HY000 140 [Cloudera][ImpalaODBC] (140) Unsupported query."
[2] "[RODBC] ERROR: Could not SQLExecDirect 'select columnA, max(columnB) from databaseA.tableA where columnC in (select distinct(columnC) from databaseB.tableB) group by columnA order by columnA'
closing unused RODBC handle 1
Tại sao truy vấn thất bại khi thử qua R? và làm cách nào để khắc phục điều này? Cảm ơn trước :)
Sửa 1:
Các kịch bản kết nối trông như sau:
library("RODBC");
connection <- odbcConnect("Impala");
query <- "select columnA, max(columnB) from databaseA.tableA where columnC in (select distinct(columnC) from databaseB.tableB) group by columnA order by columnA";
data <- sqlQuery(connection,query);
Làm thế nào để kết nối kịch bản của bạn trông – R4nc1d
Tôi đã cập nhật câu hỏi của tôi với kịch bản kết nối. –
Tôi đang gặp vấn đề tương tự. Kết nối ODBC của tôi hoạt động tốt với một truy vấn đơn giản, vì vậy nó không phải là một vấn đề ODBC. Bạn đã tìm thấy giải pháp nào @GowthamGanesh? – SummerEla