SQL

SQL查询结果需要返回WHERE子句中的所有记录,甚至重复

发布于 2021-06-15 10:59:22

我是Microsoft SQL Server的新手,需要查询以返回WHERE子句中列出的所有记录,甚至重复的记录。我所拥有的只会返回3行。

我正在阅读并使用c#解析文本文件。并使用该文本文件创建一个查询,以从数据库中获取结果,然后使用结果重建该文本文件。原始文本文件包含重复的行。每行都需要与从数据库中检索到的数据相关联。『。

SELECT tbl1.HdrCode, tbl1.HdrName
FROM Table1 tbl1
WHERE tbl1.HdrCode 
IN ('000520',
'000531',
'000531',
'000636')

我需要退货的是:

000520  Name1
000531  Name2
000531  Name2  
000636  Name3

谢谢

关注者
0
被浏览
91
1 个回答
  • 面试哥
    面试哥 2021-06-15
    为面试而生,有面试问题,就找面试哥。

    尝试这样的事情

    您需要一个内联表,其中包含您的值和JOIN表,而不是IN子句

    SELECT tb1.* 
    FROM   (VALUES ('000520'), 
                   ('000531'), 
                   ('000531'), 
                   ('000636')) tc (hdrcode ) 
           JOIN table1 tbl1 
             ON tc.hdrcode = tb1.hdrcode
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看