const fetchNickname = async () => {
const { data, error } = await supabase
.from('users')
.select('nickname')
.eq('id', userId)
.single();
if (error) {
throw new Error(error.message);
}
return data?.nickname;
};
➡️ 'users' 테이블에서 ➡️ 'nickname' 컬럼을 선택하고
➡️ 'id' 컬럼이 userId와 같은 데이터를 가져와서 ➡️ 하나의 레코드 반환
여기서 내가 아무 생각 없이 써오다가 궁금해진 건 eq의 정확한 의미.
eq는 Supabase 쿼리에서 특정 조건을 설정하고,
이 쿼리 구문은 users 테이블에서
id 컬럼이 userId와 같은 데이터를 가져오는 조건을 의미한다.
eq('id', userId):
eq는 equal(같음)이라는 의미의 함수로,
Supabase에서 SQL의 WHERE 조건을 만드는 함수다.
'id'는 테이블의 특정 컬럼을 나타내고,
여기서 id는 users 테이블의 기본 키(유저 ID).
userId는 함수 인자로 전달된 값으로, 현재 로그인된 유저의 ID.
즉, users 테이블에서 id가 userId와 같은 레코드를 찾으라는 뜻!
아니 지금 짜증 나는 이유가,