Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Выборка по регулярному выражению без повторов.
|
|||
|---|---|---|---|
|
#18+
Всем привет. Столкнулся с такой задачкой: Пусть есть следующая база данных: Код: plsql 1. 2. 3. 4. 5. 6. 7. Необходимо сделать запрос, который бы возвращал содержимое определённой директории. Например для рута можно написать что-то типа того: Код: plsql 1. 2. 3. Для dir_1 должно получаться следующее: Код: plsql 1. 2. 3. Без <magic> в первом случае выходит вся таблица. Вопрос как раз в том, чему равен <magic>. Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2015, 19:33 |
|
||
|
Выборка по регулярному выражению без повторов.
|
|||
|---|---|---|---|
|
#18+
https://github.com/ralight/sqlite3-pcre И вся мощь регулярок у тебя в руках. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2015, 21:02 |
|
||
|
Выборка по регулярному выражению без повторов.
|
|||
|---|---|---|---|
|
#18+
И как бы ты регулярками отсёк 2, 3, 4? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2015, 21:13 |
|
||
|
Выборка по регулярному выражению без повторов.
|
|||
|---|---|---|---|
|
#18+
AnEagle, Представим, что последние 2 строки добавляются так: Код: sql 1. 2. То что должно выводиться для вашего "рут"? Примерно понимаю что вы хотите, но записи в таблицах не имеют порядка, и вывести первую и "последнюю" запись в папке не получится ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2015, 21:23 |
|
||
|
Выборка по регулярному выражению без повторов.
|
|||
|---|---|---|---|
|
#18+
AnEagleИ как бы ты регулярками отсёк 2, 3, 4?Ну их вообще-то отсекать и не нужно. Но список записей в корне можно будет получить через select distinct dir regexp '^\/[^\/]+' from t1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2015, 22:08 |
|
||
|
Выборка по регулярному выражению без повторов.
|
|||
|---|---|---|---|
|
#18+
VSVLAD, порядок совершенно не важен. Важно, чтобы были выведены только /dir_1 и /dir_2. На яве это можно было бы написать так: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Вместо i здесь можно получить из БД _ID, а потом уже получить необходимые курсоры. Но получать список элементов, а потом повторять query кажется не самым лучшим решением, особенно если БД большая. Рассматриваю также варианты со следующей структурой данных: create table t2 (_id integer primary key autoincrement, dir text not null, item text not null); Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Тогда получить необходимый мне вывод можно просто по ключу DIR. Код: plsql 1. 2. 3. 4. 5. 6. 7. Но тут тоже не все, как хотелось бы. Во-первых, у нас будут создаваться "вспомогалельные" элементы, а во-вторых возрастёт количество обращений к БД, потому что нужно будет либо тупо реплейсить каждую директорию, либо проверять наличие недостающих директорий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2015, 22:48 |
|
||
|
|

start [/forum/topic.php?fid=54&fpage=9&tid=2008650]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
| others: | 14ms |
| total: | 171ms |

| 0 / 0 |
