• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1--
2-- Copyright 2019 The Android Open Source Project
3--
4-- Licensed under the Apache License, Version 2.0 (the "License");
5-- you may not use this file except in compliance with the License.
6-- You may obtain a copy of the License at
7--
8--     https://www.apache.org/licenses/LICENSE-2.0
9--
10-- Unless required by applicable law or agreed to in writing, software
11-- distributed under the License is distributed on an "AS IS" BASIS,
12-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13-- See the License for the specific language governing permissions and
14-- limitations under the License.
15--
16create table t1(
17  ts BIG INT,
18  dur BIG INT,
19  a BIG INT,
20  PRIMARY KEY (ts)
21) without rowid;
22
23create table t2(
24  ts BIG INT,
25  dur BIG INT,
26  b BIG INT,
27  PRIMARY KEY (ts)
28) without rowid;
29
30-- Then insert some rows into t1 in part 1, 3, 4 and 5.
31INSERT INTO t1(ts, dur, a)
32VALUES
33(100, 400, 111),
34(500, 50, 222),
35(600, 100, 333),
36(900, 100, 444);
37
38-- Insert a row into t2 which should be split up by t1's first row.
39INSERT INTO t2(ts, dur, b) VALUES (50, 200, 111);
40
41-- Insert a row into t2 should should be completely covered by t1's first row.
42INSERT INTO t2(ts, dur, b) VALUES (300, 100, 222);
43
44-- Insert a row into t2 which should span between t1's first and second rows.
45INSERT INTO t2(ts, dur, b) VALUES (400, 250, 333);
46
47create virtual table sp using span_left_join(t1, t2);
48
49select * from sp;
50