Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Menyoal PostgreSQL dengan Cekap untuk Nilai Bermula dengan '00' dan Aksara Ketiga Bukan Sifar?

Bagaimanakah Saya Boleh Menyoal PostgreSQL dengan Cekap untuk Nilai Bermula dengan '00' dan Aksara Ketiga Bukan Sifar?

DDD
Lepaskan: 2024-12-26 17:58:09
asal
460 orang telah melayarinya

How Can I Efficiently Query PostgreSQL for Values Starting with

Ungkapan Biasa dalam Klausa SEPERTI PostgreSQL

Pertanyaan ini bertujuan untuk memadankan nilai bermula dengan '00' dan mempunyai aksara ketiga berbeza daripada '0 ', seperti dalam '0090D0DF143A'. Walau bagaimanapun, pertanyaan berikut gagal dipadankan:

SELECT * FROM table WHERE value LIKE '00[1-9]%'
Salin selepas log masuk

Untuk menangani isu ini, pertimbangkan untuk menggunakan operator ungkapan biasa '~' bersama-sama dengan ungkapan kurungan di luar klausa LIKE. Walau bagaimanapun, untuk prestasi optimum, gabungan klausa SUKA dan TIDAK SUKA disyorkan:

SELECT *
FROM   tbl
WHERE  value LIKE '00%'
AND    value NOT LIKE '000%'
Salin selepas log masuk

Klausa SUKA dengan cekap mengecilkan padanan berpotensi dengan ungkapan berlabuh kiri, manakala klausa NOT LIKE memperhalusi lagi keputusan. Postgres boleh menggunakan indeks untuk ungkapan sedemikian, menghasilkan pelaksanaan pertanyaan yang lebih pantas.

Selain itu, adalah penting untuk menambat corak pada permulaan rentetan menggunakan '^' dalam ungkapan biasa dan menggunakan ungkapan kurungan ' 1' untuk memadankan mana-mana watak selain daripada '0'.


    Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyoal PostgreSQL dengan Cekap untuk Nilai Bermula dengan '00' dan Aksara Ketiga Bukan Sifar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

    sumber:php.cn
    Kenyataan Laman Web ini
    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
    Tutorial Popular
    Lagi>
    Muat turun terkini
    Lagi>
    kesan web
    Kod sumber laman web
    Bahan laman web
    Templat hujung hadapan