В моем sql-запросе есть что-то странное

#mysql #sql #database #ddms

#mysql #sql #База данных #ddms

Вопрос:

У меня есть таблица kategori с таким именем :

 _id  |    nama
1    |    Percakapan Umum
2    |    Angka
  

И я пытаюсь ВЫБРАТЬ с помощью простого запроса, подобного этому

select * from kategori where nama = 'Angka'

И он возвращает 0 строк, как показано в этом сообщении

0 строк, возвращенных из: select * from kategori где nama = ‘Angka’; (заняло 4 мс)

Все, что я хочу, это показать вторую запись с этим запросом. Я делаю что-то не так?

Комментарии:

1. как насчет where trim(nama) = 'Angka'; ?

2. 0 строк, возвращенных из: выберите * из категории, где trim(nama) = ‘Angka’; (заняло 4 мс)

3. Почему вы добавляете пробел ' Angka' , удалите этот пробел перед именем.

4. Я исправил свой запрос, и он также возвращает 0 строк.

5. вы пробовали trim(nama) = 'Angka'; ?

Ответ №1:

У вас есть пробел в начале значения.

Изменить:

 select * from kategori where nama = ' Angka'
  

Для

 select * from kategori where nama = 'Angka'
  

Начальные пробелы имеют значение, а конечные — нет.

Смотрите демонстрацию

Комментарии:

1. Спасибо, но ваше решение тоже возвращает 0 строк

2. Странно! Что-нибудь возвращается select * from kategori where _id = 2; ?

3. 1 Строка, возвращенная из: select * from kategori где _id = 2 (заняло 4 мс)

4. Возможно, у вас есть пробелы в вашем значении. Попробуйте where trim(nama) = 'Angka'