|
Интересная задачка
|
|||
---|---|---|---|
#18+
Встретился с интересной задачкой. Решить не удалось, но как утверждается, решение должно быть однозначно. Задача: Предположим есть таблица с полем, хранящим целые числа 1, 2, 3, 4, 5,.... Нужно выбрать в одном операторе SELECT строки из этой таблицы удовлетворяющие определенной последовательности по этому полю. Например: 0, 4(+4), 7(+3), 9(+2), 13(+4), 16(+3), 18(+2), 22(+4), ... Как это сделать то????? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2001, 02:18 |
|
Интересная задачка
|
|||
---|---|---|---|
#18+
Решений как минимум два, может быть есть и ещё. SELECT Num FROM NUMBERS WHERE Num = 0 or (Num - 4)%9 = 0 or (Num - 7)%9 = 0 or (Num - 9)%9 = 0 SELECT n.Nabor FROM ( SELECT CASE WHEN Num = 0 THEN Num WHEN (Num - 4)%9 = 0 THEN Num WHEN (Num - 7)%9 = 0 THEN Num WHEN (Num - 9)%9 = 0 THEN Num END as Nabor FROM NUMBERS) n WHERE not n.Nabor is null ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2001, 10:29 |
|
Интересная задачка
|
|||
---|---|---|---|
#18+
Ой звиняюсь, перемудрил немного. SELECT Num FROM NUMBERS WHERE Num%9 = 0 or (Num - 4)%9 = 0 or (Num - 7)%9 = 0 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2001, 10:49 |
|
|
start [/forum/moderation_log.php?user_name=foxz]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
61ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 698ms |
total: | 876ms |
0 / 0 |