2012-04-20 29 views
11

Vì vậy, tôi có một bảng và tôi muốn tạo một bảng khác bằng cách sử dụng "TẠO XEM" từ sql. Tôi cần tạo một bản sao của bảng mà tôi đang làm việc để tôi có thể sử dụng nó 2x. truy vấn sql của tôi sẽ phải như thế này:Cách tạo chế độ xem sql (TẠO XEM) trong sqlite (android) và truy vấn?

SELECT A.time AS Start, B.time AS Stop 
FROM time A, time B 
WHERE A.id+1=B.id 
AND A.bool=1 
AND B.bool=0 

bảng ban đầu của tôi là:

String sql="create table "+TABLE+" ("+C_ID+" INTEGER PRIMARY KEY AUTOINCREMENT, " 
+C_TIME+" TEXT, "+C_BOOL+" NUMERIC)"; 

để bất cứ ai có bất kỳ ideea nơi (trong mã của tôi) tôi có thể tạo ra các quan điểm và làm cách nào để truy vấn nó trong android?

tôi có thể cung cấp mã nếu cần

Cảm ơn bạn :)

Trả lời

17

Dựa trên this, bạn sẽ tạo ra quan điểm với tuyên bố sau:

CREATE VIEW view_name AS 
    SELECT A.time AS Start, B.time AS Stop 
    FROM time A, time B 
    WHERE A.id+1=B.id 
     AND A.bool=1 
     AND B.bool=0 

Bạn có thể tạo ra nó ngay sau khi bạn tạo bảng "cơ sở".

Bạn có thể truy vấn nó giống như bạn sẽ truy vấn bất kỳ bảng nào khác.

+0

Tôi biết nó có vẻ ngu ngốc nhưng tôi có một câu hỏi: không sql biết rằng A.time và B.time là hàng? nếu không, làm thế nào để làm điều đó. (xin lỗi, nhưng tôi khá mới với sql) –

+0

sqlite biết rằng A.Time và B.time là các cột. Chỉ cần rõ ràng, bảng 'time' của bạn có một cột' time'? –

+0

bảng 'thời gian' của tôi có một cột có tên 'times' –

Các vấn đề liên quan