- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我编写了以下查询来研究我的分析的一些示例方法,并且工作正常,我不需要修改此代码。但是我需要理解 "",; 的使用sep=""
以及 dbGetQuery 中的 limit 语句。
df <- data.frame(Sample.Num = integer(),
Sample.Mean = integer(),
quant.01 = integer(),
quant.05 = integer(),
quant.10 = integer(),
quant.25 = integer(),
quant.50 = integer(),
quant.75 = integer(),
stringsAsFactors = FALSE)
df[1,] <- NA
for (i in 1:500){
sdf <- dbGetQuery(con,"select col11,col23,col30
from schema.db.name
where col1 in ('value1')
and col2 in ('(v3) - value3')
and col3 in ('v0123 - value4')
order by random()*600000 limit 100")
meansample <- mean(sdf$mileage,na.rm = TRUE)
quant.01 <- quantile(sdf$mileage,na.rm = TRUE,probs = .01)
quant.05 <- quantile(sdf$mileage,na.rm = TRUE,probs = .05)
quant.10 <- quantile(sdf$mileage,na.rm = TRUE,probs = .10)
quant.25 <- quantile(sdf$mileage,na.rm = TRUE,probs = .25)
quant.50 <- quantile(sdf$mileage,na.rm = TRUE,probs = .50)
quant.75 <- quantile(sdf$mileage,na.rm = TRUE,probs = .75)
dbDisconnect(con)
问题:
Col1、2 和 3 具有字符值。现在我需要检查 col2 的所有 7 个值和 col3 的所有 9 个值。每当我使用 col1,2,3 的任何特定值时,我都需要将它们存储在数据框中,以便在循环结束并以第二个值重新启动之前执行一些操作。
因此需要学习:Add a dynamic value into RMySQL getQuery
我也研究了 gsub
和 shQuote
。尽管有多种组合以及限制语句,但我无法概念化 '", df[i], "';", sep = ""
的使用。如果它是本地数据库,我可以使用 dplyr 包来运行循环。我知道 seq_along() 需要一个数值,并且为了通过循环,在 () 中设置正确的“正确值”我确实尝试过paste0并将参数与collapse=","参数一起粘贴,但没有帮助。我还尝试了下面帖子中的 lapply
但它在 () 查询中不起作用。
How to do dbGetQuery for loop in R
(v3) - value3、(v1) - value1 等是 col 中的实际元素。这是属性 col2、col3 等的代码和描述的组合。
最佳答案
假设您有一个查询并想要替换其中的一些范围值。
sql <- "select col11,col23,col30
from schema.db.name
where col1 in (%s)
and col2 in (%s)
and col3 in (%s)
order by random()*600000 limit 100"
这里我将使用sprintf在查询中进行替换,所以我在字符串中留下了标记(%s)。因此,让我们设置 3 个要测试的范围:
col1 <- 1:10
col2 <- c('a', 'f', 'z')
col3 <- c('name1', 'name2')
# create strings that are valid in SQL
col1_sql <- paste(col1, collapse = ',')
col2_sql <- paste0("'", col2, "'", collapse = ',') # put quotes on strings
col3_sql <- paste0("'", col3, "'", collapse = ',')
# now substitute back in query
sql_new <- sprintf(sql,
col1_sql, # strings we just constructed
col2_sql,
col3_sql
)
# print out the query
cat(sql_new)
以下是查询内容:
select col11,col23,col30
from schema.db.name
where col1 in (1,2,3,4,5,6,7,8,9,10)
and col2 in ('a','f','z')
and col3 in ('name1','name2')
order by random()*600000 limit 100
关于mysql - 在 dbGetQuery 中为 () 查询中的 sql 准备字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39451395/
我的函数包含在一个更大的函数中,使用 dbConnect() , dbGetQuery() , 和 dbDisconnect() . 当函数出错时,我修复它并尝试重新运行它。但我无法重新运行它,因为我
这是 R 的 DBI 包。是否有任何选项或参数来限制 SQL 查询时间。 找不到任何选项dbConnect(drv, ...)dbGetQuery(conn, statement, ...) pool
来自This post和 This post ,我找到了编写 rsqlite 动态命令的方法。但是,它对我不起作用。我的数据如下所示: Id <- c(34, 22, 86) sqlcmd <- pa
我在 dbGetQuery 函数中指定表名时遇到问题。 命令 data1 <- dbGetQuery(con, "select * from bank_schema.capital") 效果很好。 但
我正在使用 RJDBC 包和 dbGetQuery 函数来获取 SQL 查询的输出。该代码适用于行数不多的 SQL 语句,但哪些语句的行 > 1.000.000 出现错误。是否有处理内存的参数? db
默认情况下,当我使用 DBI 包中的 dbGetQuery() 时,它会返回 integer64 类型的列作为 integer64 bit64 的 code> 类。 然后,我使用 dplyr 尝试过滤
在 dbConnect 的帮助下,与 SQL 数据库(例如 DB1 和 DB2)建立了多个连接。如何编写涉及 DB1 和 DB2 表的查询? dbGetQuery 是否只允许查询一个数据库?建立数据库
我有三个变量a、b、c(在我的例子中实际上有超过300个变量) t<-c(a,b,d) a<-dbGetQuery(con, "SELECT * FROM a") b<-dbGetQuery(con,
我编写了以下查询来研究我的分析的一些示例方法,并且工作正常,我不需要修改此代码。但是我需要理解 "",; 的使用sep="" 以及 dbGetQuery 中的 limit 语句。 df <- data
我尝试使用 tryCatch 从 R 查询我的 PostgreSQL 数据库。基本上查询有效,但我无法捕获错误并对它们使用react。这是一个例子 insert_rows <- function(df
只是想知道是否有任何方法可以通过 dbGetQuery() 的 params 将任意数量的参数传递给 IN 子句 例如,给定 dbcon ('Jan', 'Feb', 'Mar', 'Apr', '
我想做一些与这些非常相似的事情: When mysql WHERE clause is empty, return all rows Possible to have PHP MYSQL query
RMysql 的 dbGetQuery 将 BigInt 转换为数字类型。这会改变一些值。如何将 BigInt 字段读取为字符串而不是数字? 最佳答案 一种方法是在 SQL 方面进行转换: selec
我明白了 dbGetQuery 附带一个默认实现,它调用 dbSendQuery,然后调用 dbFetch,确保结果始终由 dbClearResult 释放。 和 dbClearResult 释放与结
我有一个数据库表,我试图从中获取两列的 5+ 百万行。 以下 python 代码可以完美且快速地运行(通过查询检索并写入 CSV 的全部 5 行数据大约需要 3 分钟): import pandas
我在 R 中的简单实现方面有很好的实践,但是我不熟悉通过 R 与 SQL 通信以及并行编程(在今天之前没有这两件事的经验)。我根据博客、论坛等的提示编写了以下代码。 library(doParalle
我是一名优秀的程序员,十分优秀!