반응형
R에서 데이터베이스 연결의 필터에서 문자 벡터를 사용하는 방법은 무엇입니까?
편집: 아래 예제에서 오류를 발견했습니다.제가 오타를 냈어요.stored_group
필터로예상대로 작동합니다.
문자 값을 사용하여 데이터베이스 테이블을 필터링합니다.사용합니다dplyr
연결 개체에서 직접 작동합니다.아래 단계를 참조하십시오.
MariaDB 데이터베이스에 연결했습니다.
con <- dbConnect(RMariaDB::MariaDB(),
dbname = mariadb.database,
user = mariadb.username,
password = mariadb.password,
host = mariadb.host,
port = mariadb.port)
그런 다음 데이터베이스의 테이블에서 다음을 사용하여 필터를 사용합니다.dplyr
위의 연결에서 직접 코드화:
stored_group <- "some_group"
con %>%
tbl("Table") %>%
select(id, group) %>%
filter(group == stored_group) %>%
collect()
다음과 같은 오류가 발생했습니다.Unknown column 'stored_group' in 'where clause'
그래서 제가.show_query()
다음과 같이:
stored_group <- "some_group"
con %>%
tbl("Table") %>%
select(id, group) %>%
filter(group == stored_group) %>%
show_query()
그리고 나는:
<SQL>
SELECT `id`, `group`
FROM `Table`
WHERE (`group` = `stored_group`)
번역하자면,stored_group
는 R의 값 대신 열 이름으로 표시됩니다.어떻게 예방해야 하나요?
R의 일반 data.frames에서는 이 기능이 작동합니다.예:
stored_group <- "some_group"
data %>%
select(id, group) %>%
filter(group == stored_group)
방금 아래 솔루션을 테스트했는데 작동합니다.하지만 내 데이터베이스 테이블은 커질 것입니다.수집하기 전에 데이터베이스에서 직접 필터링하고 싶습니다.
stored_group <- "some_group"
con %>%
tbl("Table") %>%
select(id, group) %>%
collect() %>%
filter(group == stored_group)
좋은 의견이라도 있나?
언급URL : https://stackoverflow.com/questions/51397383/how-to-use-character-vector-in-filter-on-a-database-connection-in-r
반응형
'programing' 카테고리의 다른 글
UI 테이블 뷰에서 횡단면 사이의 공간 (0) | 2023.09.02 |
---|---|
WCF 웹 서비스 오류:서비스가 ASP를 지원하지 않으므로 활성화할 수 없습니다.NET 호환성 (0) | 2023.09.02 |
div 내부에 이미지(img)를 맞추고 가로 세로 비율을 유지하려면 어떻게 해야 합니까? (0) | 2023.09.02 |
PHP에서 경고를 표시하지 않고 문자열이 유효한 XML인지 확인하는 방법 (0) | 2023.09.02 |
평가는 사악합니다...그럼 무엇을 대신 사용해야 할까요? (0) | 2023.09.02 |