2013-09-03 7 views
5

Czy SQLite obsługuje typowe wyrażenia tabelowe?Czy SQLite obsługuje typowe wyrażenia tabelowe?

Chciałbym uruchomić kwerendę tak:

with temp (ID, Path) 
as (
    select ID, Path from Messages 
) select * from temp 
+2

No niestety jednak nie może być alternatywą dla czego potrzebujemy CTE, możesz rozwinąć? – bendataclear

+1

Jaki jest faktyczny problem, który próbujesz rozwiązać? –

Odpowiedz

0

SQLite nie obsługuje współczynniki CTE, funkcje okien, lub którykolwiek z niczym. Można jednak pisać własne funkcje użytkownika, które można wywoływać wewnątrz SQLite, rejestrując je w bazie danych za pomocą interfejsu API SQLite za pomocą sqlite_create_function(). Rejestrujesz je w bazie danych, a następnie możesz używać ich we własnym kodzie aplikacji. Możesz utworzyć funkcję agregującą, która wykona sumę szeregu średnich na podstawie poszczególnych wartości kolumn. Dla każdej wartości wywoływana jest funkcja zwrotna typu krokowego, która pozwala wykonać pewne obliczenia na danych, a wskaźnik do przechowywania danych stanu jest również dostępny.

+1

Dzięki za odpowiedź – Andrei

+5

Sqlite dodała ostatnio wsparcie dla CTE: http://www.sqlite.org/lang_with.html –

+0

W wersji 3.8.3 http://www.sqlite.org/releaselog/3_8_3.html – heneryville