Rumah >pangkalan data >tutorial mysql >Bagaimana Mengindeks Keputusan SQL PDO Menggunakan Nilai Lajur sebagai Kunci?

Bagaimana Mengindeks Keputusan SQL PDO Menggunakan Nilai Lajur sebagai Kunci?

Linda Hamilton
Linda Hamiltonasal
2024-12-18 01:17:11422semak imbas

How to Index PDO SQL Results Using a Column's Value as the Key?

Cara Mengindeks Keputusan SQL Menggunakan Nilai Lajur dengan PDO

Apabila bekerja dengan jadual SQL yang mempunyai lajur id, selalunya wajar untuk menggunakan id sebagai indeks untuk tatasusunan yang terhasil apabila mengambil data menggunakan PDO.

Pertimbangkan perkara berikut contoh:

CREATE TABLE brands (
  id INT AUTO_INCREMENT,
  name VARCHAR(255),
  url VARCHAR(255)
);

Jika kita mengambil semua baris daripada jadual ini menggunakan PDO dan menyimpan keputusan dalam tatasusunan, kita akan mendapat sesuatu seperti ini:

$data = $pdo->query('SELECT * FROM brands')->fetchAll();

print_r($data);

Output:

Array
(
    [0] => Array
        (
            [id] => 1
            [name] => Solidfloor
            [url] => solidfloor
        )
    [1] => Array
        (
            [id] => 2
            [name] => Quickstep
            [url] => quickstep
        )
)

Seperti yang anda lihat, tatasusunan diindeks dengan penambahan nombor.

Walau bagaimanapun, jika anda ingin menggunakan lajur id sebagai indeks, anda boleh menggunakan pemalar PDO::FETCH_UNIQUE:

$data = $pdo->query('SELECT * FROM brands')->fetchAll(PDO::FETCH_UNIQUE);

print_r($data);

Output:

Array
(
    [1] => Array
        (
            [name] => Solidfloor
            [url] => solidfloor
        )
    [2] => Array
        (
            [name] => Quickstep
            [url] => quickstep
        )
)

Kini tatasusunan diindeks oleh lajur id. Ini boleh menjadi sangat berguna apabila anda perlu mengakses data melalui id kemudian.

Atas ialah kandungan terperinci Bagaimana Mengindeks Keputusan SQL PDO Menggunakan Nilai Lajur sebagai Kunci?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn