Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

आर मार्कडाउन एसक्यूएल खंड में एसक्यूएल पैरामीटर का उपयोग कैसे करें

हो सकता है कि यह आपके लिए एक समाधान है, गोंद_एसक्यूएल का उपयोग करके, यह मेरे कंप्यूटर पर काम करता है

https://community.rstudio .com/t/using-multiple-r-variables-in-sql-chunk/2940/13

आरएमडी भाग:

library(DBI)
library(glue)
library(RSQLite)

con <- DBI::dbConnect(RSQLite::SQLite(), ":memory:")
dbWriteTable(con, "mtcars", mtcars, overwrite = TRUE)

cyl_int <- c(4L, 6L)
cyl_sql <- glue_sql("{cyl_int*}")

  SELECT * FROM mtcars
  WHERE cyl IN (?cyl_sql)
  LIMIT 3

दिनांक कॉलम के लिए, आपको इसे अपने डेटाबेस के अनुसार सही ढंग से प्रारूपित करना पड़ सकता है या to_date(etc, '%d%...') का उपयोग करना पड़ सकता है यहाँ sqlite में ISO-8601 तिथियों के साथ यह आसान है, एक उदाहरण:

library(DBI)
library(glue)
library(RSQLite)

con <- DBI::dbConnect(RSQLite::SQLite(), ":memory:")
mtcars$DATE_1 <- seq(from = Sys.Date() - 15, to = Sys.Date() + nrow(mtcars) -16, by = 1) %>% as.character()
dbWriteTable(con, "mtcars", mtcars, overwrite = TRUE)

cyl_int <- c(4L, 6L)
cyl_sql <- glue_sql("{cyl_int*}")

d_date_sql <- glue_sql("{Sys.Date()*}", .con = con)

ध्यान दें कि आपको वर्ण पैरामीटर के लिए .con पैरामीटर निर्दिष्ट करना होगा, जैसा कि कहा गया है यहां

  SELECT cyl, mpg, DATE_1 FROM mtcars
  WHERE DATE_1 >= ?d_date_sql
  ORDER BY DATE_1




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या Oracle/PL SQL में RSA का उपयोग करने का कोई तरीका है?

  2. पेज सबमिट करने की आवश्यकता के बिना मैं ऑरैकल एपेक्स सर्वर साइड लाइव सत्यापन कैसे बना सकता हूं?

  3. मैं पैरामीटर मानों के साथ Oracle संग्रहीत कार्यविधि कॉल को कैसे लॉग/ट्रेस करूं?

  4. हाल ही में निष्पादित SQL V$SQL में नहीं है

  5. Oracle यहाँ एक छिपा हुआ कॉलम क्यों जोड़ता है?