2017-09-20 6 views
1

googleに最適な表現方法がわかりません。しかし、私は約120kの行を持つSQLiteテーブルを持っていると、列の1つは完全な国名です。残念ながら、データソースは地域別に物事をグループ化せず、ヨーロッパにある完全な国名のみを返したいとします。私の選択やグループ化を行うことができるものが存在しますか?ヨーロッパの国のみを返すクエリSQLite

これはもともとCSVファイルに変換してDBブラウザにインポートする.xlsxファイルです。私はそれをインポートしたとき、ヘッダーを要求しませんでした(または一番上の行をヘッダーとして扱います)。それを設定する方法はありますか?

+0

EU内のすべての国のリストを作成し、クエリを作成した後で作成することができます。はい、あなたは既存のファイルにヘッダを追加することができます – AndMar

答えて

0

国がヨーロッパにあるレコードを取得するには、これが実行されているとわかる唯一の方法は、in句の後ろにすべてのヨーロッパの国を使用することです。ちょうど少数の国で例:

SELECT * FROM table_name WHERE County in ('GERMANY', 'FRANCE', 'SPAIN', 'ENGLAND'); 

は、私はハードコードにあなたのSELECT句の国々がないことをお勧めだろうが、提供しない第2のテーブルを追加するために欧州諸国のリストhere.

+0

そのリストは2年後には古くなる可能性があります(少なくともEUに関しては関係あります:-))リンクされたテーブルが良いでしょう。 – TripeHound

1

を私が発見しましたそのような領域のグループ化。その理由は簡単です。地域内の国々はかなり速く変化する可能性があります。あなたは、単に照会することができますこのような第二のテーブルで

SELECT * FROM 
    table_name t 
    JOIN countries c ON c.Id = t.CountryID 
WHERE 
    c.Region = 'EUROPE' 

はい、このような第二のテーブルを作成する作業ですが、それは間違いなく価値があります!

関連する問題