1..$_
- From
- Viktor Smirnov (2:5066/198)
- To
- Губарев Алексей
- Date
- 2006-05-29T00:18:04Z
- Area
- SU.DBMS.SQL
Здравствуй Губарев.
По моему, пpимеpно в 09:29 25 май 06 наверно Губарев Алексей кажется что-то
писал возможно к Kalachihin Vladimir:
ГА> From: "Губарев Алексей" <prokl@vgok.unets.ru>
>> VS> +----+-------+
>> VS> | ID | cells |
>> VS> +----+-------+
>> VS> | id | N |
>> VS> +----+-------+
>> VS> нужно чтобы при WHERE ID=id результатом была последовательность
>> VS> 1 2 3
>> VS> ... N, а не просто N
>> Последовательность до N - это обломись, а до id - легко.
ГА> Не совсем понял, чего надо, но если id типа serial (counter), а cell
ГА> содержит только значения id, то
ГА> SELECT id FROM test WHERE ID<=(SELECT cell FROM test WHERE ID=id )
результатом запроса дожна стать _последовательность_ от 1 до N
например
+-------+
| cells | результат
+-------+
| 5 | 1 2 3 4 5
| 13 | 1 2 3 4 5 6 ... 13
| 32 | 1 2 3 4 5 6 ... 32
+-------+
повторю: mysql 3.23, он не поддерживает вложенные запросы.
в качестве костыля использую промежуточную таблицу *cells*
===8<=== начинается Windows Clipboard ===8<===
--------------
SELECT * FROM cells
--------------
+--------+------+------+--------+
| key_id | ID | name | active |
+--------+------+------+--------+
| 1 | 0 | ┬ёх | yes |
| 2 | 1 | 1 | yes |
| 3 | 2 | 2 | yes |
| 4 | 3 | 3 | yes |
| 5 | 4 | 4 | yes |
| 6 | 5 | 5 | yes |
| 7 | 6 | 6 | yes |
| 8 | 7 | 7 | yes |
| 9 | 8 | 8 | yes |
| 10 | 9 | 9 | yes |
[skipped]
--------------
SELECT cells FROM obj
WHERE ID=25
--------------
+-------+
| cells |
+-------+
| 4 |
+-------+
1 row in set (0.00 sec)
--------------
SELECT cells.key_id FROM cells
INNER JOIN obj ON obj.ID=25
WHERE key_id<=obj.cells ORDER BY key_id
--------------
+--------+
| key_id |
+--------+
| 1 |
| 2 |
| 3 |
| 4 |
+--------+
4 rows in set (0.00 sec)
Bye
===8<==== кончился Windows Clipboard ====8<===
другого способа не нашел.
этот работает, но имхо _весьма_ не оптимально
С уважением, Viktor Smirnov.
... mail:meteoviktor@mail.ru icq:168881308 beeline:89051972587
---
* Origin: Ты че плетешь, гад?! (2:5066/198.0)
SEEN-BY: 50/12 203 450/159 186 1024 451/30 454/9 461/43 132 640 469/999
SEEN-BY: 4614/20 4616/3 4625/8 4641/444 5000/76 5000 5001/5001 5006/1 5007/1
SEEN-BY: 5010/53 70 5011/13 5012/23 46 5015/28 5019/31 5020/86 175 194 400 545
SEEN-BY: 5020/639 715 758 830 982 1057 1200 1523 1604 1665 1909 1922 2013 2238
SEEN-BY: 5020/4441 5021/3 29 5022/128 5025/3 750 5026/10 14 45 5027/12 5029/32
SEEN-BY: 5030/217 436 473 556 966 1063 1080 1339 1900 5035/38 5036/1 5040/47
SEEN-BY: 5042/13 5045/7 5047/47 5049/1 5051/15 5054/1 8 9 28 35 37 45 63 67
SEEN-BY: 5055/95 5057/1 5059/9 5060/88 5061/15 5062/1 5066/2 9 18 70 71 72 111
SEEN-BY: 5066/132 133 198 314 5077/70 5080/68 1003 5082/6 5083/21 5084/32
SEEN-BY: 5085/13 5090/106 5093/27 5095/20 5096/18 5099/133 6009/1
PATH: 5066/198 132 133 18 5020/400 4441 545 5054/1 37