Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Isih Lajur Jadual MySQL dengan Nilai Teks Separa Angka dengan Betul?

Bagaimanakah Saya Boleh Isih Lajur Jadual MySQL dengan Nilai Teks Separa Angka dengan Betul?

Linda Hamilton
Lepaskan: 2025-01-03 07:41:39
asal
305 orang telah melayarinya

How Can I Sort a MySQL Table Column with Partially Numeric Text Values Correctly?

Menukar Separa Teks Bukan Angka kepada Nombor untuk Isih dalam MySQL

Dalam MySQL, adalah mungkin untuk menukar teks yang mengandungi nombor kepada nilai angka untuk tujuan menyusun. Pertimbangkan senario di mana anda mempunyai lajur jadual dengan pengecam dalam format "nombor-nama" dan lajur diisih mengikut abjad, mengakibatkan susunan yang salah berdasarkan komponen angka.

Untuk menangani isu ini, satu boleh menggunakan gabungan manipulasi rentetan dan fungsi penukaran untuk mengekstrak dan menukar bahagian berangka teks. Ini melibatkan penggunaan fungsi SUBSTRING_INDEX untuk mengekstrak bahagian terakhir rentetan selepas tanda sempang '-' dan kemudian menukarnya kepada integer tidak bertanda (UNSIGNED INTEGER) menggunakan fungsi CONVERT. Di bawah ialah pertanyaan yang menyelesaikannya:

SELECT field,CONVERT(SUBSTRING_INDEX(field,'-',-1),UNSIGNED INTEGER) AS num
FROM table
ORDER BY num;
Salin selepas log masuk

Pertanyaan ini mengekstrak bahagian berangka lajur "medan" selepas tanda sempang, menukarnya kepada integer dan menyerahkannya kepada lajur "num". Jadual kemudian diisih mengikut lajur "bilangan", memastikan susunan angka yang betul bagi baris dengan awalan nama yang sama.

Adalah penting untuk ambil perhatian bahawa penyelesaian ini menganggap bahawa bahagian berangka pengecam sentiasa ada. dan mempunyai format yang konsisten. Jika nama mungkin tidak mengandungi nombor, semakan atau pengubahsuaian tambahan mungkin diperlukan untuk mengendalikan kes sedemikian.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Isih Lajur Jadual MySQL dengan Nilai Teks Separa Angka dengan Betul?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan