这哥们表设计的太恶心了
无奈之下请教高手 今天就要交工
table expts 字段:ID, NAME, PBMAJOY1
table stock 字段:ID, S_GOODS , PANTERS
expts中PBMAJOY1字段的值取自stock表中的S_GOODS,并可以为多个S_GOODS的值
stock中同一个PANTERS值可以对应多个S_GOODS
如何查询出expts表中PBMAJOY1属于同一个PANTERS的数据
注:PBMAJOY1的值可以属于不同的PANTERS
并可以为多个S_GOODS的值 这句是什么意思
select b.PANTERS ,a.PBMAJOY1
from expts a,stock b
where a.PBMAJOY1=b.S_GOODS
order by b.b.PANTERS
是这个意思吗
这样不行啊 PBMAJOY1可以是单个值也可以有多个值 比如 111,222 是用逗号分开的 没办法a.PBMAJOY1=b.S_GOODS
啊,确实很糟糕,几个值合成一个,再去分离效率就低了
最多有多少个合在一起
没最高上限 很郁闷 最后只是显示一个数量 除非都取出来放个集合 然后一个一个查 浪费这么多资源做这个太不值了
SQL code:
select distinct PBMAJOY1,level,substr(PBMAJOY1,case level when 1 then 1 else instr(PBMAJOY1,',',1,level-1)+1 end,
instr(PBMAJOY1||',',',',1,level)-case level when 1 then 0 else instr(PBMAJOY1,',',1,level-1) end-1) PBMAJOY1,
NAME
from expts
connect by level<=length(PBMAJOY1)-length(replace(PBMAJOY1,',',''))+1
试试用这个查询语句代替expts加入到上述表连接中
可以明确的是这个效率不高
SQL c
我安装一台redhat linux5+oracle 10g的服务器,笔记本(XP系统)安装了oracle 10g客户端,结果老是出12560的错误,请高手指点一二,
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dpor ......
oracle连接啥这么复杂啊.
oracle 10g
用ps/sql dev怎么也连不上.
用sqlplus可以登陆.net manager之前测试连接了成功的.现在搞得也连接不了.
listener.ora:
SID_LIST_LISTENER =
(SID_LIST =
......