Как сделать по-короче?

12
BasePelleta
На сайте с 29.05.2008
Offline
120
767

Есть

$sql = 'WHERE ('.get_adv_search_query().')'.'AND ((region_id=29)OR(region_id=57)OR(region_id=58))'. hwFilterGetSQL('l.');

Есть ли Варианты сократить

(region_id=29)OR(region_id=57)OR(region_id=58) ???

Ragnarok
На сайте с 25.06.2010
Offline
239
#1
BasePelleta:
Есть

$sql = 'WHERE ('.get_adv_search_query().')'.'AND ((region_id=29)OR(region_id=57)OR(region_id=58))'. hwFilterGetSQL('l.');


Есть ли Варианты сократить

(region_id=29)OR(region_id=57)OR(region_id=58) ???

если

get_adv_search_query()

всегда true, а

hwFilterGetSQL('l.')

всегда пусто,то почему бы и нет

//TODO: перестать откладывать на потом
BasePelleta
На сайте с 29.05.2008
Offline
120
#2

Ragnarok,

не понял Вас!

Dimoha
На сайте с 15.06.2009
Offline
53
#3
BasePelleta:

Есть ли Варианты сократить
(region_id=29)OR(region_id=57)OR(region_id=58) ???

region_id IN('29','57','58')

Drivelink (http://drivelink.ru/for/support/) - автоматическая проверка ссылок
BasePelleta
На сайте с 29.05.2008
Offline
120
#4

$sql = 'WHERE ('.get_adv_search_query().')'.'AND region_id in (31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,4 7,48,49,50,51,53,54,55,56,57,58,59,29,60,61,62,63, 64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,8) '.hwFilterGetSQL('l.');

Как короче сделать?

Ragnarok
На сайте с 25.06.2010
Offline
239
#5

BasePelleta, упс, не правильно понял.

Dimoha:
region_id IN('29','57','58')

да, так правильно

Dimoha
На сайте с 15.06.2009
Offline
53
#6
BasePelleta:
$sql = 'WHERE ('.get_adv_search_query().')'.'AND region_id in (31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,4 7,48,49,50,51,53,54,55,56,57,58,59,29,60,61,62,63, 64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,8) '.hwFilterGetSQL('l.');
Как короче сделать?

ну...

AND region_id IN (SELECT id FROM table)

где естественно в таблице "table" ваши нужные "числа"

BasePelleta
На сайте с 29.05.2008
Offline
120
#7

Dimoha,

ну...

AND region_id IN (SELECT id FROM table)

где естественно в таблице "table" ваши нужные "числа"

Усложняете, но подход интересный!

Dimoha
На сайте с 15.06.2009
Offline
53
#8

просто я предположил что ваши числа - данные из другой таблицы.

если нет и надо именно в запросе перечислить их - то думаю больше никак. ведь вы и так их уже компактно прописали. куда компактнее то:)

C
На сайте с 04.02.2005
Offline
291
#9
BasePelleta:
Dimoha,
Усложняете, но подход интересный!

чем же он сложный? и Чем интересный?

Стандартный подход к данному решению.

Вы привели коды регионов, но как вы по какому-то условию эти регионы выбираете и зависит от логики Вашей задачи.

Dimoha
На сайте с 15.06.2009
Offline
53
#10
Chukcha:
чем же он сложный? и Чем интересный?
Стандартный подход к данному решению.

конечно.

Chukcha:

Вы привели коды регионов, но как вы по какому-то условию эти регионы выбираете и зависит от логики Вашей задачи.

именно

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий