QGISでフィールドを削除する方法は?


14

QGISで属性テーブルのフィールドを削除するオプションはいつ有効になりますか?編集モードで、まだフィールドを削除できません...


属性テーブルに単一の列のみを表示したいのですか?またはその列のみを検索しますか?
ネイサンW

2
属性テーブルに単一の列を表示したいだけです
アルン

sql select rows not columns(field)
-neogeomat

@amritkarma uは........私は完全に混乱していてください手の込んだことができます
アルン

混乱している場所を教えてください。そうしないと、サポートが困難になります。質問を拡大するとどういう意味ですか?
neogeomat

回答:


6

このボタンは、PostGISレイヤーでのみ使用できます。「テーブルマネージャー」プラグインを使用して、テーブルの列を削除できます。


6
フィールドを削除するためにプラグインをインストールする必要があるのは少し面倒ではありませんか?ありがとう
vascobnunes

1
それは本当ですが、これは、QGISが読み取り/書き込みベクターデータに使用するOGRドライバーの制限です。このバグレポート:trac.osgeo.org/qgis/ticket/1934を参照してください。Fortunatleyの修正はパイプラインにあります:trac.osgeo.org/gdal/ticket/2671 :)
11

また、たとえば、OpenOffice Calcで直接* .dbfファイルを開いて、データの列を変更、追加、または削除することもできます。保存するときは、すべての行が最初と同じ順序であることを確認してください(FIDフィールドを使用するなど)。
サンダーカ

12

QGISの最近のバージョンは、属性テーブルからのShapefileフィールドの削除をサポートしています。

編集を有効にすると、シェープファイルの属性テーブルを編集して、不要な列を複数削除できます。

ここに画像の説明を入力してください


6

QGIS 3.0には、プロパティメニューに属性を削除するボタンもあります。最初に編集を切り替え(レイヤーを右クリック->編集を切り替え)、プロパティメニューに移動します(右クリック->プロパティまたはダブルクリック)。[ソースフィールド]タブに移動して、削除する属性を選択し、上部のボタンをクリックします。フィールドを削除


1

「テーブルマネージャー」プラグインは廃止されました。廃止されたという警告が付属しており、代わりにリファクタリングフィールド処理アルゴリズムを使用することをお勧めします。これは機能します。ただし、別の方法は、レイヤーを新しい名前で保存し、エクスポートするフィールドの選択を解除してから、新しいレイヤーの作成後に削除したいフィールドがある以前のバージョンを削除することです。フィールドの選択を解除する場所を強調するスクリーンショットとして保存


0

多くのファイルを調べたところ、いくつかのフィールド定義(特に「$ length」などの式で定義されたフィールド)が* .qgsファイルにのみ保存されていることがわかりました(少なくともQGIS 2.18.13の場合) XMLファイル。つまり、単純なテキストエディターを使用して編集できるテキストファイルです。QGISレイヤーの名前は<layername> ... </ layername>要素に保存されます。関心のある層を探します。式フィールドは、<expressionfields> ... </ expressionfields>要素にリストされます。例えば

<expressionfields>
  <field typeName="FLOAT" precision="0" expression="$length/1000" length="0" type="6" comment="" name="km"/>
</expressionfields>

値が$ length / 1000として計算される「km」という名前のフィールドの場合。不要になった<field> ... </ field>要素を削除します(* .qgsファイルが使用されていない場合)。問題が発生した場合に備えて、*。qgsファイルのコピーを最初に作成してください。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.