SQLin查询问题

上图的SQL语句可以得出下图结果

我把该语句执行的结果字符串直接复制到下面的SQL IN里面可以得出查询结果

但当我把第一段SQL语句放到 IN()里面就得不出上图的结果,查不出数据。不知何故

请大神指点,谢谢!第一个语句执行的结果6.JPG

FineReport shwjr 发布于 2021-12-4 10:43 (编辑于 2021-12-4 11:24)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
shirokoLv6资深互助
发布于2021-12-4 13:43

你这个想法有问题,第一个结果是字符串而不是一个结果集。

引号是用来表示字符串的

本来 in的语法是 IN(字符串(1),字符串(2),字符串(3))

你这相当于 IN (字符串('1','2','3'))

--

不过也有按你想法的解决办法,用sql函数的结果拼接

.... IN (${SQL("BIDW_SOUTH","你的第一段sql",1,1)})

最佳回答
0
snrtuemcLv8专家互助
发布于2021-12-4 10:56(编辑于 2021-12-4 11:06)

你的字段不要去用什么分割处理,直接用原来字段就可以

参考我的示例

这个CUSTOMERID字段根本不需要你处理,直接使用

image.png

============

  • shwjr shwjr(提问者) 我这个数据结果比较复杂,比如你customerid字段里第一条记录Alex; 第2条记录格式是Marks;Oliver;Frank;,你怎么处理查询这4个人的记录?
    2021-12-04 11:01 
  • snrtuemc snrtuemc 回复 shwjr(提问者) 我是根据customerid的啊,你是sale_code字段,你in里面的字段不需要自己处理成字符串,处理成字符串反而sql不识别,直接用原来的结果集就可以
    2021-12-04 11:06 
  • shwjr shwjr(提问者) 回复 snrtuemc 举个例子 一张表存的数据是 customerid sex ALEX F Oliver M 第二张表的数据是 customerid ALEX; FRANK;OLIVER; 怎么通过第二张表的数据来匹配到第一张的性别 注意两个表的customerid的内容数据格式是不匹配
    2021-12-04 11:16 
  • snrtuemc snrtuemc 回复 shwjr(提问者) 你第一个语句,放数据集预览,是什么结果,截图看下
    2021-12-04 11:20 
  • shwjr shwjr(提问者) 回复 snrtuemc 已放置,在问题截图最下面那个
    2021-12-04 11:26 
最佳回答
0
檬茶茶Lv4初级互助
发布于2021-12-4 11:16(编辑于 2021-12-4 11:44)

你为啥不把第一个sql变成一个表再和下面那个关联查询呢

类似这种

图片.png

  • shwjr shwjr(提问者) 没有写数据库权限
    2021-12-04 11:22 
  • 檬茶茶 檬茶茶 回复 shwjr(提问者) 倒数第二个截图,把in里面的那个sql引用成一个表一样的和sale_code表关联,又不是让你建一个表要啥权限
    2021-12-04 11:34 
  • 檬茶茶 檬茶茶 回复 shwjr(提问者) 不能像我这样写吗
    2021-12-04 11:44 
  • 4关注人数
  • 322浏览人数
  • 最后回答于:2021-12-4 13:43
    请选择关闭问题的原因
    确定 取消
    返回顶部