能在where中用case嗎?????
現在數據表xwp_out_quantity 的數據如下:
vendor item
220010 A90215R
220010 A90200R220020 A80216R
220020 A80201R220030 A70218R
220030 A70204R想把這表的數據分拆:
當vendor=220010 時,把item第二位為9的都顯示出來;
當vendor=220020 時,把item第二位為8的都顯示出來;
當vendor=220030 時,把item第二位為7的都顯示出來;
select
substr(xoq.item,2,5) model
from xwp_out_quantity xoq
where xoq.vendor='&s_vendor'
and
( case
when xoq.vendor='220010' then substr(xoq.item,2,1) in (9)
when xoq.vendor='220020' then substr(xoq.item,2,1) in (8)
when xoq.vendor='220030' then substr(xoq.item,2,1) in (7)運行後,PLSQL Developer報錯:
mission keyword哪位幫幫啊????????????
現在數據表xwp_out_quantity 的數據如下:
vendor item
220010 A90215R
220010 A90200R220020 A80216R
220020 A80201R220030 A70218R
220030 A70204R想把這表的數據分拆:
當vendor=220010 時,把item第二位為9的都顯示出來;
當vendor=220020 時,把item第二位為8的都顯示出來;
當vendor=220030 時,把item第二位為7的都顯示出來;
select
substr(xoq.item,2,5) model
from xwp_out_quantity xoq
where xoq.vendor='&s_vendor'
and
( case
when xoq.vendor='220010' then substr(xoq.item,2,1) in (9)
when xoq.vendor='220020' then substr(xoq.item,2,1) in (8)
when xoq.vendor='220030' then substr(xoq.item,2,1) in (7)運行後,PLSQL Developer報錯:
mission keyword哪位幫幫啊????????????
解决方案 »
- 如何完全导出数据库的一个用户并且导入到我的数据库中。
- 维护及日志记录问题
- 数据库安装问题
- 关于oracle的内嵌视图,在哪可以找到详细说明?
- oracle9i 创建用户时权限选择
- 安装oracle client出错
- 哪位大虾能给char,nchar,varchar2,nvarchar2做个详细比较?
- 如何在一张表有update在做,没提交前,控制别的select等待!
- 我有一个有80个字段的表,我想复制出另一个表相同结构的表,如何做?
- 如何给用户exp的权限,让他只能导入自己用户下的数据?
- Oracle将多张表中查询出的列导出到xml中
- System.Data.OracleClient需要Oracle客户端软件8.1.7或更高版本
2 where substr(xoq.item,2,1) in (case xoq.vendor when '220010' then '9' when '220020' then '8' when '220030' then '7' end)
3 and xoq.vendor=220020;
VENDOR ITEM
-------------------- --------------------
220020 A80216R
220020 A80201R也可以使用decodeSQL> select * from xwp_out_quantity xoq
2 where substr(xoq.item,2,1) in decode(xoq.vendor,'220010','9','220020','8','220030','7','')
3 and xoq.vendor=220020;
VENDOR ITEM
-------------------- --------------------
220020 A80216R
220020 A80201R