回答

收藏

sqlite合并从多个列中全选

技术问答 技术问答 209 人阅读 | 0 人回复 | 2023-09-14

如何在SQLite中将许多选择查询组合到1条语句中?6 D& I7 X& n* v' a) p' W$ D7 @
SELECT * FROM Table1 WHERE condition1
1 t3 h( U" ^9 r, nSELECT * FROM Table2 WHERE condition2
2 S4 ~) z- \& [SELECT * FROM Table3 WHERE condition31 y7 a7 s% C2 @9 b" G6 o
...5 t. E4 E, w! q& [, e% v
               
# v4 n' x! P+ I  B( R  o$ |解决方案:
, |% u; B  h, R* I4 @               
4 n: q' n4 B0 ?, B0 K' B! a; w/ x) i( S  F- H: I. @' i

; U( E1 m* e; p; C$ g0 v                使用UNION三个查询的结果结合起来。- `5 f! l) w) u6 k5 G! t
UNION将删除重复的结果,并保留在最终结果的唯一行上。如果要保留重复的行,请使用UNION ALL。
$ ^& ?$ L; ]- pSELECT * FROM Table1 WHERE condition1 & D- C  I5 e% R0 l
UNION, [5 B' u" p7 ]& m7 H( x
SELECT * FROM Table2 WHERE condition2 1 Q' y& y& M% n# t0 q' x# I
UNION8 v6 ?/ `9 o- z8 N4 y5 V9 ~# [4 k) C
SELECT * FROM Table3 WHERE condition3. y, A* c1 W4 x5 Y, d  M* N
警告 :每条选择语句上的列数( 以及数据类型 )必须匹配。
/ {$ D" m3 b0 X$ r: G更新1
* b+ _# G5 G9 g) N: U' O1 B; O) V1 ?根据下面的评论,您正在寻找JOIN,
7 s. |$ t, w! C7 [# J6 _* kSELECT  a.*, b.*, c.*
. I0 Y" q/ c4 u, WFROM    table1 a7 v7 b+ C; d- U* d2 g4 ?1 N& h5 o8 d
        INNER JOIN table2 b1 D( k$ l4 h1 }) P2 `+ G4 S- d
            ON a.ColName = b.ColName: n/ |* M/ x% t
        INNER JOIN table3 c4 X2 w( u; C0 n( h1 E
            ON a.ColName = c.ColName) K6 ~1 i8 `$ X( h$ t* S9 Q; X' h
-- WHERE    .. add conditions here ..
$ ~2 e: k$ {/ S要进一步获得有关联接的知识,请访问以下链接:
% ]) v& J  S1 S" G( r% J7 c7 oSQL连接的可视表示) C$ X% ]4 F$ A  _" j
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则