2016-12-06 1 views
0

использовано в ArrayList где положение для столбца, как показано ниже с Спящий и MYSQL.Как использовать, когда условие для столбца, который содержит разделенный запятыми значения с использованием Hibernate и MySQL

List<String> list=new ArrayList<String>(); 
list.add("name1"); 
list.add("name2"); 
list.add("name3"); 

String query= "from TEST where name in (:names)"; 
Query q = s.createQuery(hql); 
q.setParameterList("names", list); 

Но необходимо реализовать то же самое, что и условие для столбца с разделителями-запятыми. Все записи должны быть показаны, если какое-либо значение из этого столбца представляет в ArrayList

Таблица Структура

ID NAME 
---------- 
1 name1,name2,name3 
2 name1 
3 name2,name3 
4 name5,name8 
5 name3,name6 

Ожидаемый результат:

записи с идентификатором 1,2,3 , 5.

Постановка задачи: Я хочу использовать критерии Hibernate с ограничениями и у меня есть ArrayList использовать в ИНЕКЕ и мы не можем использовать Restrictions.in («имя», список); , поскольку этот столбец имен содержит значения, разделенные запятыми, и нам нужно проверить, является ли какой-либо элемент из массива частью данных в этом столбце.

ответ

0

Фиксация структуры БД была бы моим советом.

Однако, если вам нужно решение прямо сейчас, я бы предложил вам использовать SQL-предложение like. Он проверяет, содержится ли данная строка в результатах.

Здесь у вас есть ссылка на этот вопрос, так что вы можете увидеть, как это работает: http://www.w3schools.com/sql/sql_like.asp

Ваш SQL превратится во что-то вроде этого:

from TEST where name like (:names) 
+0

мы можем использовать в соответствии с критериями, как показано ниже * * Restrictions.like ("NAME", список); ** – user5303259

+0

Я не понимаю ваш комментарий. Это вопрос? – UDKOX

+0

Я хочу использовать критерии Hibernate с ограничениями, и у меня есть arraylist для использования в where where, и мы не можем использовать ** Restrictions.in ("name", list); ** потому что это ** имя ** столбец содержит запятую значения, и нам нужно проверить, является ли какой-либо элемент из массива частью данных в этом столбце. Надежда ясна и, пожалуйста, дайте мне знать, если вам нужна дополнительная информация – user5303259

 Смежные вопросы

  • Нет связанных вопросов^_^