当前位置: 代码迷 >> Informix >> sql语句?解决思路
  详细解决方案

sql语句?解决思路

热度:350   发布时间:2016-05-05 08:55:19.0
sql语句?
有两个表:q表和p表
q表:                                p表:
qid qname                  pid pname    pdept
----    -----                    ----   ------  --------
1 a,b                       1 a         77
2 a                         2 b         77
3 b                         3 c         88
4 c                         4 d         99
                                                                
两个表的关系是:字段qname由pname的一个或多个组成,如何在q表中查询出qname对应的pdept为77、88 的qid字段?                                



------解决方案--------------------
还记错了informix没有instr,所以只能用like了。

估计这样差不多:

select q.qid from q, p where (p.pdept=77 or p.pdept=88) and q.qname like '%'
------解决方案--------------------
p.pname
------解决方案--------------------
'%' 
------解决方案--------------------
try:
select q.qid from q, p where 
replace(q.qname, p.pname,'123') like '%123%' 


------解决方案--------------------
try:
select q.qid from q, p where
replace(q.qname, p.pname,'123') like '%123%'

也可以替换成其它特殊字符用来判断 
------解决方案--------------------
select q.qid from q, p where 
replace(q.qname, p.pname,'123') like '%123%' 
  相关解决方案