2013-09-03 69 views
5

SQLite có hỗ trợ các biểu thức bảng chung không?SQLite có hỗ trợ các biểu thức bảng chung không?

Tôi muốn chạy truy vấn như thế:

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

Không buồn bã tuy nhiên có thể có một thay thế cho những gì bạn cần CTE kiếm, bạn có thể xây dựng? – bendataclear

+1

Vấn đề thực tế bạn đang cố gắng giải quyết là gì? –

Trả lời

0

SQLite không hỗ trợ CTEs, chức năng cửa sổ, hoặc bất kỳ những thứ tương tự. Tuy nhiên, bạn có thể viết các hàm người dùng của riêng mình mà bạn có thể gọi bên trong SQLite bằng cách đăng ký chúng vào cơ sở dữ liệu với API SQLite bằng cách sử dụng sqlite_create_function(). Bạn đăng ký chúng với cơ sở dữ liệu, và sau đó bạn có thể sử dụng chúng trong mã ứng dụng của riêng bạn. Bạn có thể tạo một hàm tổng hợp sẽ thực hiện tổng của một chuỗi số trung bình dựa trên các giá trị cột riêng lẻ. Đối với mỗi giá trị, một hàm gọi lại kiểu bước được gọi là cho phép bạn thực hiện một số phép tính trên dữ liệu và một con trỏ để giữ dữ liệu trạng thái cũng có sẵn.

+1

Cảm ơn câu trả lời – Andrei

+5

Sqlite gần đây đã thêm hỗ trợ cho CTE: http://www.sqlite.org/lang_with.html –

+0

Trong phiên bản 3.8.3 http://www.sqlite.org/releaselog/3_8_3.html – heneryville