Sqlite иерархия динамически - PullRequest
0 голосов
/ 02 января 2019

помогите мне, как написать этот запрос для вывода ниже. Найти данные моей таблицы

id                    cat                    sub-cat          sub-sub
1                      remarkable   
2                      bsorpti_upd  
3                      ntimicrobiasdfsdf
4                      remarkable                Dissolve
5                      macokinetics
6                      pharmacodynamics 
7                      pharmacodynamics          Antimicrobial 
8                      pharmacodynamics          Antimicrobial          peptite
9                      Test 
10                     ideas    
11                     Test                      biologically

Я хочу, чтобы мой вывод был

column

Remarkable
         Dissolve 
bsorpti_upd
ntimicrobiasdfsdf
macokinetics
pharmacodynamics
        Antimicrobial
               peptite
Test
         biologically
ideas               

1 Ответ

0 голосов
/ 31 января 2019

ВЫБРАТЬ printf ('% * s', СЛУЧАЙ, КОГДА NULLIF (sub-cat, '') НУЛЯЕТ ТОЛЬКО 4, КОГДА NULLIF (sub-sub, '') НУЛЯЕТ ТОЛЬКО 8, ИЛИ 12 КОНЕЦ, '') ||COALESCE (NULLIF (sub-sub, ''), NULLIF (sub-cat, ''), cat) КАК COlumn FROM indexable t ЗАКАЗАТЬ по первичному термину, СЛУЧАЙ, КОГДА NULLIF (sub-cat, '') НУЛ, ЧЕМ 4, КОГДА NULLIF(sub-sub, '') равен NULL THEN 8 ELSE 12 END, COALESCE (NULLIF (sub-sub, ''), NULLIF (sub-cat, ''), cat)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...