PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

postgres generuje tablicę za pomocą okna slajdów

Jest to najprawdopodobniej spowodowane tym, że dbplyr nie ma zdefiniowanych tłumaczeń do konwersji na.omit lub str_count na postgresql (tłumaczenie dla paste jest najprawdopodobniej zdefiniowany).

Możesz zastąpić str_count i na.omit sprawdzając wcześniej brakujące wartości.

st2tm %>% 
  mutate(
    p1 = lag(pid),
    p2 = lead(pid)
  ) %>% 
  filter(!is.na(p1),
         !is.na(p2)) %>%
  mutate(g = paste(p1, ",", pid, ",", p2)) %>% 
  select(-c(p1, p2)) %>% 

A jeśli paste jest problem, który można zastąpić wbudowanym CONCAT postgresql funkcja.

st2tm %>% 
  mutate(
    p1 = lag(pid),
    p2 = lead(pid)
  ) %>% 
  filter(!is.na(p1),
         !is.na(p2)) %>%
  mutate(g = CONCAT(p1, ",", pid, ",", p2)) %>% 
  select(-c(p1, p2)) %>% 

Ponieważ CONCAT nie jest funkcją R, dbplyr przekaże ją jako napisaną do postgresql, zamiast próbować ją przetłumaczyć.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dynamiczne przekazywanie nazw kolumn dla zmiennej rekordu w PostgreSQL

  2. Wybierz losowy wiersz z tabeli PostgreSQL z ważonymi prawdopodobieństwami wierszy

  3. postgresql - nie można utworzyć bazy danych - OperationalError:dostęp do szablonu źródłowej bazy danych1 mają inni użytkownicy

  4. Jak zdobyć tylko jsonb konkretnych kluczy z postgresa?

  5. PostgreSQL 10 w systemie Linux — LC_COLLATE locale en_US.utf-8 niepoprawne