Это немного запутанно, но получает желаемый результат:
zz <- textConnection("foo", "w")
write.table(t(df), file = zz, col.names=F, sep=",", quote=F)
close(zz)
foo
# [1] "ID,1,2,3" "X,a,b,c" "Y, 1, 2,NA"
cat(paste(foo, collapse='\n'), file = 'test.csv', sep='')
Вы должны получить файл с символом новой строки после только первых двух строк данных.
вы использовали агрегацию count()
в своем запросе и, исходя из ваших требований, это показывает, что вам нужно агрегирование. когда вы использовали агрегацию, вы должны поместить столбец выбора в группу также
SELECT Tours.name as name,sum(tour_fee) income, count(Tours.id)
FROM booking_details
inner join Tours on
booking_details.tour_id = Tours.id group by Tours.name
Как вы использовали в выборе booking_details.*
, что означает каждый столбец таблицы бронирования, но вы не поместили этот столбец в группу, поэтому брошенная ошибка