2017-06-19 11 views
1

次のクエリを使用するとします。WHERE節で行が返されない

このデータがあります。

Arkanaut Company, Aethermatic Volley Gun, Arkanaut Company, Privateer Pistol 

Arkanaut Company, Aethermatic Volley Gun, Arkanaut Company, Aethermatic Volley Gun 

ただし、a1.unit_name = att.unit_nameでWHERE句を使用します。私は行を取得しません。 紛失しているものがありますか?

EDIT:

表は、あなたが登録しよ操作が必要になりますように思え

CREATE TABLE Army_1 (
    ID   INTEGER PRIMARY KEY, 
    Unit_Name VARCHAR, 
    Attack_Name VARCHAR, 
    Quantity INT 
); 

CREATE TABLE Attacks (
    Unit_Name   REFERENCES Models (Unit_Name), 
    Attack_Name VARCHAR, 
    Attack_Type VARCHAR, 
    Attacks  INTEGER, 
    To_Hit  INTEGER, 
    To_Wound INTEGER, 
    Rend  INTEGER, 
    Damage  INTEGER 
); 
+0

「結合」したいだけのようです。 – CollinD

+0

こんにちはCollinD、それでも0行を返しますか? –

+1

空白や互換性のない文字エンコードのように聞こえます。 – Julian

答えて

1

クレジットを、私は私のWHERE句でTRIM()を使用する必要がありました。これは問題を解決しました。

+1

15年以上の(抽出変換と読み込み)データの品質は、一致するように見えるときは常に疑わしいです:P – xQbert

+2

ユーザーの代わりにシステム管理キーでデータのサニタイズまたは結合定義された入力。 – xQbert

+0

おかげでxQbert、私は今ユーザー定義の入力を再設計しています。 :) –

2

を挿入します。

このお試しください:xQbertに

SELECT a1.unit_name, a1.attack_name, att.unit_name, att.attack_name 
FROM Army_1 a1 
INNER JOIN Attacks att ON a1.unit_name = att.unit_name 
+0

こんにちはジェフ、ありがとうが、まだ0行を返します。あなたはどんなpkかfkのことを前提としていますか?私は本当にこの1の周りに私の頭を得ることができません。 –

+0

あなたは両方のテーブルに重複するユニット名があることを確認できますか? –

+0

はいArkanaut Companyは私が質問に入れた1です –

関連する問題