回答

收藏

SQL条件联合

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

问题:我有一个SQL函数,该函数返回文件列表& U' D+ i5 Z8 Y: W% g
现在,我应该使用联合将其他列表加入该列表,但前提是用户是admin。
5 k1 D6 _0 |! C9 F那可能吗?就像是:$ i: L- A  p6 l' ?; n
CREATE FUNCTION tfu_CMS_Process(@bIsAdmin bit  )
. r3 r0 }0 U" z-- Add the parameters for the function here
5 H& ?. d1 h$ x6 o$ z2 X" YRETURNS TABLE
& M4 ?5 ~* l' S& C( l# iAS/ K! C" V. f, h
RETURN' B* t7 M$ P# y) t
(
3 P; i! Z7 t8 V4 G. e' v SELECT * FROM TABLE1
9 P( A7 F! e2 Y if bIsAdmin
5 i& W" {( F/ f UNION ALL* ?8 D1 X  v1 h  a
SELECT * FROM TABLE2
+ ?- R6 `* W" | end if
/ L. b7 e: {7 o/ C6 ~5 u1 K' n )
2 R# F- X' [9 l+ `4 @               
/ w1 w7 x* p: B0 g解决方案:# ?- T: [% Q- X: z
               
; a! B; l5 K: V+ x3 x( r* o! g6 a3 R, A  Y# U  u

& p6 _6 ^0 F6 l6 f$ n, ^! F                SELECT  *8 V5 a  `; W3 D' G' T$ l- y4 V
FROM    table19 @' R- p/ _0 |/ K
UNION ALL: D9 a+ }, g* `# L
SELECT  *
% K7 O9 x% N$ y' [, X# yFROM    table2; K8 E* q! `7 r" d
WHERE   @isAdmin = 1
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则