Menghapus kolom

Deskripsi

Menghapus kolom dari dokumen yang dihasilkan oleh tahap sebelumnya.

Dokumen yang dihasilkan akan berisi semua kolom dari tahap sebelumnya, kecuali kolom yang ditentukan untuk dihapus.

Sintaksis

Node.js

const results = await db.pipeline()
  .collection("/cities")
  .removeFields('population', 'location.state')
  .execute();

Contoh klien

Node.js
const results = await db.pipeline()
  .collection("cities")
  .removeFields("population", "location.state")
  .execute();

Web

const results = await execute(db.pipeline()
  .collection("cities")
  .removeFields("population", "location.state"));
Swift
let results = try await db.pipeline()
  .collection("cities")
  .removeFields(["population", "location.state"])
  .execute()

Kotlin

val results = db.pipeline()
    .collection("cities")
    .removeFields("population", "location.state")
    .execute()

Java

Task<Pipeline.Snapshot> results = db.pipeline()
        .collection("cities")
        .removeFields("population", "location.state")
        .execute();
Python
results = (
    client.pipeline()
    .collection("cities")
    .remove_fields("population", "location.state")
    .execute()
)
Java
Pipeline.Snapshot results =
    firestore
        .pipeline()
        .collection("cities")
        .removeFields("population", "location.state")
        .execute()
        .get();

Perilaku

Menghapus Kolom Bertingkat

Tahap remove_fields mematuhi sintaksis kolom bertingkat, dan akan menghapus kunci dari peta.

Misalnya, untuk menghapus kolom status bertingkat dari set data:

Node.js

await db.collection('cities').doc('SF').set({name: 'San Francisco', location: {country: 'USA', state: 'California'}});
await db.collection('cities').doc('TO').set({name: 'Toronto', location: {country: 'Canada', province: 'Ontario'}});

Pipeline berikut dapat digunakan:

Node.js

const results = await db.pipeline()
  .collection("/cities")
  .removeFields('location.state')
  .execute();

Yang menghasilkan dokumen berikut:

{name: 'San Francisco', location: {country: 'USA'}}
{name: 'Toronto', location: {country: 'Canada', province: 'Ontario'}}

Penghapusan elemen dalam array tidak didukung.

Menghapus Kolom yang Tidak Ada

Jika kolom bertingkat atau tingkat teratas yang diberikan ke remove_fields tidak ada dalam dokumen, tahap ini tidak akan mengedit dokumen untuk kolom tersebut. Kolom yang ada lainnya akan tetap dihapus.