0

私は以下に問題があります

表1

最初のケース:

postcode
LS1 1LS

2番目のケース:

postcode
LS11LS

テーブル2

    postcode| region
    LS1 | Leeds
    LS11    | Leeds

以下のクエリを使用して、地域と関連する郵便番号をカウントしています

SELECT table2.region as 'Region', COUNT( table2.postcode ) as  'count'
FROM table1
INNER JOIN table2 ON table1.postcode LIKE CONCAT( table2.postcode,  '%' ) 
WHERE table1.postcode >  ''
GROUP BY Region 

それを表1に適用すると、最初のケースが得られます

Leeds | 1

それをテーブルに適用すると、1秒のケースが得られます

Leeds | 2

なんらかの理由で、この郵便番号/類似の郵便番号で、残りの半分が最初の部分とまったく同じで、類似の内部結合の間にスペースがない場合、カウントは 2 として返されます。

これに対する解決策はありますか?

このsqlfiddleを参照してください

4

1 に答える 1

0

テーブル 1 に と の値を持つ 2 つのエントリがある場合LS1 1LSLS11LS結合はこれらの両方に一致し、カウントは 2 になります。

于 2013-03-26T18:35:00.063 に答える