У меня есть набор данных, похожий на следующий:
site_id, species
1, spp1
2, spp1
2, spp2
2, spp3
3, spp2
3, spp3
4, spp1
4, spp2
Я хочу создать такую таблицу:
site_id, spp1, spp2, spp3, spp4
1, 1, 0, 0, 0
2, 1, 1, 1, 0
3, 0, 1, 1, 0
4, 1, 1, 0, 0
Этот вопрос был задан здесь Однако проблема, с которой я сталкиваюсь, заключается в том, что мой список видов значительно больше, и поэтому создание массивного запроса с перечислением каждого вида вручную заняло бы значительное количество времени. Поэтому я хотел бы решение, которое не требует этого и мог бы вместо этого читать из существующего списка видов.
Кроме того, при игре с этим запросом функция count () будет продолжать добавляться, поэтому я получу значения больше 1, когда в site_id присутствуют кратные числа одного и того же вида. В идеале я хочу двоичный вывод 1 или 0.