0

2 つのビューがあり、それらを 2 つの異なるデータ型と 2 つの列で結合する必要があります。

最初の結合がオンです: 1 つのビューにはproductlength0.138 のフィールドがあり、データ型は varchar です。もう 1 つのビューにはlength0.138 のフィールドがあり、データ型は float です。

2 番目の結合がオンになっています。1 つのビューにはproductwidth0.025 のフィールドがあり、データ型は varchar です。もう 1 つのビューにはwidth0.025 のフィールドがあり、データ型は float です。

2 つのビューを 1 つの結合で結合すると、機能します (どちらのフィールドも使用できます)。両方の結合を使用すると、結合が失敗し、データがリンクされません。

結合を使用した私のクエリは次のとおりです。

SELECT  t1.OrderNum,t2.OrderNumber,t1.Description,
t1.ProductThickness,t2.thickness,t1.ProductWidth,t2.width,t1.ProductLength,t2.length,
t1.Productgrade,t2.grade, t1.OrderQty,t1.ProducedQty,t2.DispatchedQty,t2.DispatchDate

FROM table1 as t1 LEFT OUTER JOIN table2 as t2
on t1.ProductWidth=t2.Width
and t1.ProductLength=t2.Length

この結合は失敗しますか? これらの 2 つのビューを結合条件と異なるデータ型の両方で結合するにはどうすればよいですか?

同様の変換を行うために、varchar を float に変換できますか?

いつもありがとう。

4

2 に答える 2

0

結合の実行中に、正しい列名を使用しており、それらの値が同一であるかどうかを確認してください。次のリンクを見て、同じことをしようとしているかどうかを確認してください。 http://sqlfiddle.com/#!3/82da2/1

于 2013-07-18T18:03:23.340 に答える