Android Firebase Realtime Database запросы

160
12 марта 2022, 23:20

Есть одна проблема с моей базой данных. Я делаю запрос, чтобы проверить есть ли совпадения у пользователей в никнейме. Структура моей базы следующая:

users: {
    тут я просто вставляю uid пользователя: {
        niclName: "Vasya"
    }
}

Дак вот как мне осуществить поиск по всем юзерам (точнее по их uid) и далее уже по их никнейму.

Для поиска никнейма я использую следующий запрос:

Query searchMatch = myRef.child("users").child("userId").child("nickName").equalTo(nickName);

И это, логично, не работает. Может мне нужно использовать orderBy...();?

Answer 1

Используй подобный запрос, у меня работает.
FirebaseDatabase.getInstance().reference.child("users").orderByChild("nickName").equalTo(nickName).addListenerForSingleValueEvent(Здесь ValueEventListener{})

Далее в методе onDataChange проверяешь равно ли полученное значение нулю или нет. Если ты получил значение, то подобный ник уже есть, если равно null, то нет

READ ALSO
Autoincriment в базе данных

Autoincriment в базе данных

Суть проблемы: у меня есть база данных в ней хранятся различные таблицы, так вот в некоторых таблицах есть айди, который обозначен как BIGSERIAL...

130
Как поставить Bground с помощью url

Как поставить Bground с помощью url

Нужна помощь с кодом который писать что бы устанавливался bground с url который указан в кодеБыли попытки сначала загрузить bground на диск и с диска...

161
Обычный активити в качестве фрагмента

Обычный активити в качестве фрагмента

у меня возникла потребность в открытии обычного Активити как фрагмента, это принципиально важноЯ реализую один проект в котором нужно сделать...

170
Не добавляются заказы в phpMyAdmin

Не добавляются заказы в phpMyAdmin

Есть вот такой код:

76