Добро пожаловать, Гость
Логин: Пароль: Запомнить меня

ТЕМА: Несколько значений одного поля в запросе.

Несколько значений одного поля в запросе. 3 года 11 мес. назад #7288

  • DarkBear
  • DarkBear аватар
  • Не в сети
  • Захожу иногда
  • Сообщений: 40
  • Спасибо получено: 4
  • Репутация: 1
Приветствую коллеги.
У меня вот какая проблемка:

Есть некоторый тип поиска в форме поиска которого одно из полей Simple Select.
Есть необходимость чтобы при определенных значениях этого поля в запросе участвовало еще одно значение.
Сам по себе Simple select небольшой, там 4 значения всего (key1=1,key2=2,key3=3,key4=4)
не придумал ничего другого, как создать скрытое поле ссылающееся на то же поле в БД что и Simple select) и через триггер добавлять его в форму поиска при необходимости.
проблема состоит в том, что эти данные попадают в запрос в следующем виде:
t2.doc_status LIKE '%1%' AND t2.doc_status LIKE '%2%'
а есть острая необходимость чтобы запрос был вида
t2.doc_status LIKE '%1%' OR t2.doc_status LIKE '%2%'
Подскажите пожалуйста есть ли возможность сделать такой финт?
Администратор запретил публиковать записи гостям.

Несколько значений одного поля в запросе. 3 года 11 мес. назад #7289

  • Zeka
  • Zeka аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 222
  • Спасибо получено: 36
  • Репутация: 11
В лайв закинь через запятую нужные значение, например 2,4. Ну и поиграйся с match.
Последнее редактирование: 3 года 11 мес. назад от Zeka.
Администратор запретил публиковать записи гостям.

Несколько значений одного поля в запросе. 3 года 11 мес. назад #7292

  • DarkBear
  • DarkBear аватар
  • Не в сети
  • Захожу иногда
  • Сообщений: 40
  • Спасибо получено: 4
  • Репутация: 1
Прошу прощения, не совсем понял...
Если использовать дополнительное скрытое поле то в запросе получаем
((t2.doc_status LIKE '%1%')) AND ((t2.doc_status LIKE '%1%') OR (t2.doc_status LIKE '%2%'))
где первый лайк от simple select а второй и третий от скрытого поля
и непонятно как избавиться от первого лайка например не скрывая simple select по триггеру

Если же прописать использовать одно поле и прописать туда live как сделать чтобы значения подставлялись только при выборе "1" в селекте... а при остальных (2,3,4) было только одно значение.

ууупс еще и тему создал не в том разделе
у меня SEBLOD 3

Ззы и кстати скрытое поле у меня не выключается по триггеру :(
Последнее редактирование: 3 года 11 мес. назад от DarkBear.
Администратор запретил публиковать записи гостям.

Несколько значений одного поля в запросе. 3 года 11 мес. назад #7295

  • DarkBear
  • DarkBear аватар
  • Не в сети
  • Захожу иногда
  • Сообщений: 40
  • Спасибо получено: 4
  • Репутация: 1
В итоге решил проблему несколько коряво. По другому не получилось к сожалению.
Создал 4 поля типа текст, ссылающиеся на поле по которому строится select,
прописал для div-ов которые их оборачивают стили display:none
(с полями типа hidden решение не взлетело)
для каждого поля в триггере написал
заполнять 1,2 если select = 1
заполнять 2 если select = 2
заполнять 3 если select = 3
заполнять 4 если select = 4

для select-а в match сказал не использовать, а для текстовых полей - использовать любое из значений и разделителем указал запятую

весьма коряво, но взлетело.
Если есть другие способы более элегантные - буду рад советам.
Последнее редактирование: 3 года 11 мес. назад от DarkBear.
Администратор запретил публиковать записи гостям.

Несколько значений одного поля в запросе. 3 года 11 мес. назад #7298

  • Zeka
  • Zeka аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 222
  • Спасибо получено: 36
  • Репутация: 11
Я все же не до конца вкурил че ты хочешь сделать.
Но если не ошибаюсь, то можно key1=1,2 key2=2,key3=3,key4=4
Администратор запретил публиковать записи гостям.

Несколько значений одного поля в запросе. 3 года 11 мес. назад #7300

  • DarkBear
  • DarkBear аватар
  • Не в сети
  • Захожу иногда
  • Сообщений: 40
  • Спасибо получено: 4
  • Репутация: 1
Именно это и нужно. Это и сделал. и заработало
Только смущает что:
1. пришлось заводить 4 дополнительных поля
2. эти поля типа text а не hidden
Администратор запретил публиковать записи гостям.

Несколько значений одного поля в запросе. 3 года 11 мес. назад #7309

  • Zeka
  • Zeka аватар
  • Не в сети
  • Завсегдатай
  • Сообщений: 222
  • Спасибо получено: 36
  • Репутация: 11
Так, а зачем тебе 4 поля.
В одно добавь key1=1,2 key2=2,key3=3,key4=4
Администратор запретил публиковать записи гостям.

Несколько значений одного поля в запросе. 3 года 11 мес. назад #7310

  • DarkBear
  • DarkBear аватар
  • Не в сети
  • Захожу иногда
  • Сообщений: 40
  • Спасибо получено: 4
  • Репутация: 1
Если поле одно, то 4 триггера не хотят работать
Администратор запретил публиковать записи гостям.

roundtheme