视图中的where/case 如何写

Dision LI 2011-05-23 09:28:41

SELECT tblwfsqd.*,
(SELECT MIN(tblbjcpjjb.shdj)
FROM tblbjcpjjb
LEFT OUTER JOIN 客户 ON tblbjcpjjb.bmid=客户.客户ID
WHERE (tblbjcpjjb.cpid=tblwfsqd.货号) AND (tblbjcpjjb.gxid=tblwfsqd.工序ID)

-- AND (CASE WHEN 客户.类型='品牌' then tblbjcpjjb.bmid in ( 174,221)
-- else tblbjcpjjb.bmid not in ( 174,221) end)

) AS 最低价
FROM tblwfsqd


...全文
88 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
打一壶酱油 2011-05-23
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wwwwgou 的回复:]
SQL code
SELECT tblwfsqd.*,
(SELECT MIN(tblbjcpjjb.shdj)
FROM tblbjcpjjb
LEFT OUTER JOIN 客户 ON tblbjcpjjb.bmid=客户.客户ID
WHERE (tblbjcpjjb.cpid=tblwf……
[/Quote]

+++
Shawn 2011-05-23
  • 打赏
  • 举报
回复
SELECT  tblwfsqd.*,
(SELECT MIN(tblbjcpjjb.shdj)
FROM tblbjcpjjb
LEFT OUTER JOIN 客户 ON tblbjcpjjb.bmid=客户.客户ID
WHERE (tblbjcpjjb.cpid=tblwfsqd.货号) AND (tblbjcpjjb.gxid=tblwfsqd.工序ID)
AND
(
(客户.类型='品牌' AND tblbjcpjjb.bmid in ( 174,221)) OR
((客户.类型<>'品牌' OR 客户.类型 IS NULL) AND tblbjcpjjb.bmid not in ( 174,221))
)

) AS 最低价
FROM tblwfsqd
jxqn_liu 2011-05-23
  • 打赏
  • 举报
回复

SELECT tblwfsqd.*,
(SELECT MIN(tblbjcpjjb.shdj)
FROM tblbjcpjjb
LEFT OUTER JOIN 客户 ON tblbjcpjjb.bmid=客户.客户ID
WHERE (tblbjcpjjb.cpid=tblwfsqd.货号) AND (tblbjcpjjb.gxid=tblwfsqd.工序ID)
And ((客户.类型='品牌' and tblbjcpjjb.bmid in ( 174,221)) or (客户.类型<>'品牌' and tblbjcpjjb.bmid not in ( 174,221)))

) AS 最低价
FROM tblwfsqd
Shawn 2011-05-23
  • 打赏
  • 举报
回复
SELECT  tblwfsqd.*,
(SELECT MIN(tblbjcpjjb.shdj)
FROM tblbjcpjjb
LEFT OUTER JOIN ¿Í»§ ON tblbjcpjjb.bmid=¿Í»§.¿Í»§ID
WHERE (tblbjcpjjb.cpid=tblwfsqd.»õºÅ) AND (tblbjcpjjb.gxid=tblwfsqd.¹¤ÐòID)
AND
(
(¿Í»§.ÀàÐÍ='Æ·ÅÆ' AND tblbjcpjjb.bmid in ( 174,221)) OR
(¿Í»§.ÀàÐÍ<>'Æ·ÅÆ' AND tblbjcpjjb.bmid not in ( 174,221))
)
-- AND (CASE WHEN ¿Í»§.ÀàÐÍ='Æ·ÅÆ' then tblbjcpjjb.bmid in ( 174,221)
-- else tblbjcpjjb.bmid not in ( 174,221) end)

) AS ×îµÍ¼Û
FROM tblwfsqd
Dision LI 2011-05-23
  • 打赏
  • 举报
回复

思想僵化了。。。。感谢AcHerat

AcHerat 元老 2011-05-23
  • 打赏
  • 举报
回复

SELECT tblwfsqd.*,
(SELECT MIN(tblbjcpjjb.shdj)
FROM tblbjcpjjb
LEFT OUTER JOIN 客户 ON tblbjcpjjb.bmid=客户.客户ID
WHERE (tblbjcpjjb.cpid=tblwfsqd.货号) AND (tblbjcpjjb.gxid=tblwfsqd.工序ID)

AND ((客户.类型=N'品牌' and tblbjcpjjb.bmid in ( 174,221))
or tblbjcpjjb.bmid not in ( 174,221))

) AS 最低价
FROM tblwfsqd


34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧