Информация об изменениях

Сообщение Re: Развернуть строки в колонки от 15.01.2015 12:33

Изменено 15.01.2015 12:38 night beast

Здравствуйте, flаt, Вы писали:

F>Что-то я не соображу, как это сделать в SQL (sqlite).

F>Имеется таблица (точнее, csv) вида
F>
F> ---------------------
F>| id name value  time |
F> ---------------------
F>id1,name1,value1,time1
F>id1,name2,value2,time1
F>id1,name1,value1,time2
F>


F>Как это сделать?


насколько знаю, транспонирования в sqlite нет.

name1 и name2 тебе известны?
если нет, то боюсь что придется строить запрос с нужными столбцами в приложении.

если известны и я правильно понял вопрос, то как-то так:

select *
from (
    select * from table where name = 'name1'
) t1
full join (
    select * from table where name = 'name2'
) t2 on t1.time = t2.time
Re: Развернуть строки в колонки
Здравствуйте, flаt, Вы писали:

F>Что-то я не соображу, как это сделать в SQL (sqlite).

F>Имеется таблица (точнее, csv) вида
F>
F> ---------------------
F>| id name value  time |
F> ---------------------
F>id1,name1,value1,time1
F>id1,name2,value2,time1
F>id1,name1,value1,time2
F>


F>Как это сделать?


насколько знаю, транспонирования в sqlite нет.

name1 и name2 тебе известны?
если нет, то боюсь что придется строить запрос с нужными столбцами в приложении.

если известны и я правильно понял вопрос, то как-то так:

select *
from (
    select * from table where name = 'name1'
) t1
full join (
    select * from table where name = 'name2'
) t2 on t1.time = t2.time


ну и надо решить, что делать с дублями, если они возможны