За последние 24 часа нас посетил 22741 программист и 1221 робот. Сейчас ищет 761 программист ...

SELECT * FROM **** WHERE **** = РУССКИЙ

Тема в разделе "MySQL", создана пользователем GD26Rus, 13 апр 2016.

  1. GD26Rus

    GD26Rus Новичок

    С нами с:
    13 апр 2016
    Сообщения:
    30
    Симпатии:
    0
    народ, привет, помогите. дедйлайн на носу а тут вдруг базу надо было прикрутить, а я даже никогда не работал с ними серьезно. делаю фильтр поиска.

    PHP:
    1. SELECT * FROM sale WHERE type=дом OR room=8 OR type_house=кирпичный OR object=новостройка
    все бы ничего, но те таблицы которые имеют тип TEXT выдают ошибку. выборка не происходит. или как это назвать. можеть быть проблема в том что все значения с типом TEXT имеют содержание на русском? хотя выводятся на сайт без проблем как и заносятся в бд. помогите.
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    Это реальный запрос?
     
  3. GD26Rus

    GD26Rus Новичок

    С нами с:
    13 апр 2016
    Сообщения:
    30
    Симпатии:
    0
    да, один из генерируемых. все в принципе подобны друг другу.
    --- Добавлено ---
    к примеру такие запросы как эти он выдает нормально
    PHP:
    1. SELECT * FROM sale WHERE  room=8
    PHP:
    1. SELECT * FROM sale WHERE room=8 OR id=1
    но тут тип данных INTEGER [INT]
    а в остальных TEXT. и я не знаю что делать. не могу понять в чем ошибка.
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    Почитай документацию по MySQL, надо всё обрамлять в ' (значения) и ` (имя столбцов, таблиц)

    Код (Text):
    1. SELECT * FROM `sale` WHERE` type`='дом' OR `room`='8' OR `type_house`='кирпичный' OR `object`='новостройка'
    там в тексте нет переносов, нужно точное соответствие? в phpmyadmin запросы ведут себя так же?
     
  5. GD26Rus

    GD26Rus Новичок

    С нами с:
    13 апр 2016
    Сообщения:
    30
    Симпатии:
    0
    к примеру такие запросы как эти он выдает нормально
    PHP:
    1. SELECT * FROM sale WHERE  room=8
    PHP:
    1. SELECT * FROM sale WHERE room=8 OR id=1
    но тут тип данных INTEGER [INT]
    а в остольн
    да, абсолютно так же. да, нужно точное соответсвие
    --- Добавлено ---
    слишком долго читать документацию. точнее, я эти обязательно займусь, но точно не сейчас.
    --- Добавлено ---
    слишком долго читать документацию. точнее, я эти обязательно займусь, но точно не сейчас.
    --- Добавлено ---
    SELECT * FROM `sale` WHERE` type`='дом' OR `room`='8' OR `type_house`='кирпичный' OR `object`='новостройка' LIMIT 0, 25
    вот что phpmyadmin выдает
    --- Добавлено ---
    хелпуйте народ, что делать-то?
     
  6. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    Точное соответствие по типу TEXT работает с русским языком.
    Главное чтобы кодировки были одинаковые.

    такой запрос работает?
    Код (Text):
    1. SELECT * FROM `sale` WHERE `object`='новостройка'
    Можешь часть базы для примера выложить на http://sqlfiddle.com/
     
  7. GD26Rus

    GD26Rus Новичок

    С нами с:
    13 апр 2016
    Сообщения:
    30
    Симпатии:
    0
    да, такой работает. я не знаю как выкладывать с базы что-то. там всего одна таблица с 5 строками. 8 столбцов.
     
  8. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    в phpmyadmin можно сделать экспорт базы и выложи её сюда
     
    GD26Rus нравится это.
  9. GD26Rus

    GD26Rus Новичок

    С нами с:
    13 апр 2016
    Сообщения:
    30
    Симпатии:
    0
    я не понял почему, но вот так заработало
    Код (Text):
    1. SELECT*FROM`sale`WHERE`object`='новостройка'OR`type`='дом'OR`room`='8'OR`type_house`='кирпичный'
    --- Добавлено ---

    спасибо. но вот последний вопрос. как сделать чтоб еще искало по значению меньше или больше в INTEGER?
     
  10. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
  11. GD26Rus

    GD26Rus Новичок

    С нами с:
    13 апр 2016
    Сообщения:
    30
    Симпатии:
    0
    спасибо большое. выручили!