const getWorkbookLikeCount = async (workbook_id) => {
const { count, error } = await supabase
.from("workbook_like")
.select("*", { count: "exact", head: true })
.eq("workbook_id", workbook_id);
if (error) {
console.error("Error fetching like count:", error);
return null;
}
return count;
};
이 코드는 Supabase에서 데이터의 개수를 효율적으로 가져오는 방법입니다124.
.select("*", { count: "exact", head: true })의 의미는 다음과 같습니다:
count: "exact": 정확한 행 개수를 계산하도록 요청합니다12.
head: true: 실제 데이터를 가져오지 않고 행 개수만 반환합니다12.
이 방식의 장점:
데이터를 전송하지 않고 개수만 반환하므로 네트워크 트래픽을 줄입니다2.
서버에서 직접 개수를 계산하므로 효율적입니다2.
클라이언트에서 .length를 사용할 필요가 없어 코드가 간결해집니다