2014-02-11 44 views
0

我有一个包含列PolicyNumber具有值“CCL-9997-10497” 并且还具有具有列PolicyNumber另一个表PolicyImages SQL表策略值CCL-9997-000010497'内连接表

我想要在PolicyNumber内部连接这两个表? 我该如何实现它?

+1

两张表之间的关系是什么? – Miller

+0

你正在使用什么数据库? –

+0

PolicyNumber列上的2个表格之间存在一对一的关系 – JunIkram

回答

1

您的两个表具有不同的PolicyNumber格式,因此您需要某种计算。 我觉得下面的查询会帮助你

SELECT a.* FROM 
FROM Table1 a INNER JOIN Table1 b ON a.PolicyNumber = 
Replace(b.PolicyNumber,'-' + right(b.PolicyNumber,charindex('-',REverse(b.PolicyNumber))-1), 
'-' + convert(varchar,Convert(Decimal,right(b.PolicyNumber,charindex('-',REverse(b.PolicyNumber))-1))) 
) 
0

这应做到:

SELECT * 
FROM Policy 
INNER JOIN PolicyImageq ON Policy.PolicyNumber = PolicyImages.PolicyNumber 
0

如果这是一个一次性的错误,那么你可以做:

Policy p join 
PolicyImages pi 
on p.PolicyNumber = pi.PolicyNumber or 
    (p.PolicyNumber = 'CCL-9997-10497' and pi.PolicyNumber = 'CCL-9997-000010497') 

如果是格式问题,那么解决方案实际上是数据库-具体。

+0

这两个表中有很多PolicyNumbers ..我需要加入他们..我不能硬编码PolicyNumbers – JunIkram