Rumah > pangkalan data > tutorial mysql > Bagaimana untuk menukar jenis angka dalam MySQL

Bagaimana untuk menukar jenis angka dalam MySQL

PHPz
Lepaskan: 2023-04-20 11:32:32
asal
2567 orang telah melayarinya

MySQL ialah sistem pengurusan pangkalan data hubungan popular yang sering digunakan untuk menyimpan data berstruktur. Dalam MySQL, jenis berangka adalah salah satu jenis data yang kerap digunakan, tetapi disebabkan perbezaan format yang mungkin wujud antara sistem dan sumber data yang berbeza, anda mungkin menghadapi beberapa masalah semasa menukar jenis angka. Artikel ini akan memperkenalkan cara menukar jenis angka dalam MySQL.

Pertama, kita perlu memahami jenis data berangka biasa dan sifat berkaitannya dalam MySQL. Jadual berikut menyenaraikan jenis data berangka yang disokong oleh MySQL:

数据类型 描述
TINYINT 1 字节有符号整数
SMALLINT 2 字节有符号整数
MEDIUMINT 3 字节有符号整数
INT 4 字节有符号整数
BIGINT 8 字节有符号整数
FLOAT 单精度浮点数
DOUBLE 双精度浮点数
DECIMAL 固定精度小数

Dalam jadual di atas, jenis integer masing-masing menggunakan 1, 2, 3, 4, dan 8 bait untuk menyimpan data, jenis titik terapung masing-masing menggunakan 4 dan 8 bait untuk menyimpan data, dan jenis DECIMAL menggunakan 4 hingga 65 perkataan. Bahagian berbeza dalam ruang storan untuk menyimpan data Ruang storan tertentu bergantung pada bilangan titik perpuluhan yang ditetapkan dalam definisi lajur.

Seterusnya, kita akan membincangkan senario biasa untuk penukaran jenis angka dalam MySQL:

  1. Tukar rentetan kepada jenis angka

Dalam banyak kes Seterusnya, kita perlu untuk menukar rentetan yang disimpan dalam pangkalan data kepada jenis angka, seperti menukar rentetan yang dimasukkan oleh pengguna kepada nombor dan kemudian melakukan pengiraan. Dalam MySQL, anda boleh menukar rentetan kepada jenis angka dengan menggunakan CAST, CONVERT atau pengendali.

Pertama, mari kita lihat penggunaan fungsi CAST. Fungsi CAST menerima dua parameter Parameter pertama ialah nilai yang perlu ditukar jenis, dan parameter kedua ialah jenis data sasaran yang perlu ditukar. Sebagai contoh, untuk menukar rentetan '123' kepada jenis INT, anda boleh menggunakan pernyataan berikut:

SELECT CAST('123' AS INT);
Salin selepas log masuk

Jika rentetan tidak boleh ditukar kepada jenis data sasaran, nilai NULL akan dikembalikan.

Seterusnya, mari kita lihat penggunaan fungsi CONVERT. Fungsi CONVERT juga menerima dua parameter Parameter pertama ialah nilai yang perlu ditukar jenis, dan parameter kedua ialah jenis data sasaran yang perlu ditukar. Contohnya, untuk menukar rentetan '123' kepada jenis DOUBLE, anda boleh menggunakan pernyataan berikut:

SELECT CONVERT('123', DOUBLE);
Salin selepas log masuk

Di sini, jenis data sasaran tidak disertakan dalam tanda petikan, tetapi ditulis terus dalam pernyataan SQL. Jika rentetan tidak boleh ditukar kepada jenis data sasaran, 0 akan dikembalikan.

Akhir sekali, mari kita lihat penggunaan penukaran jenis menggunakan pengendali. Apabila menukar rentetan kepada jenis angka, anda boleh menambah rentetan dan jenis data, contohnya:

SELECT '123' + 0;
Salin selepas log masuk

Di sini, kami menambah rentetan '123' kepada nombor 0, dan MySQL akan secara automatik Rentetan ' 123' ditukar kepada jenis angka 123.

  1. Tukar jenis angka kepada jenis rentetan

Dalam banyak kes, kita perlu menukar jenis angka kepada jenis rentetan, seperti menghantar nombor sebagai parameter kepada prosedur stor atau fungsi. Dalam MySQL, jenis angka boleh ditukar kepada jenis rentetan dengan menggunakan fungsi CAST atau CONVERT.

Pertama, mari kita lihat penggunaan fungsi CAST. Fungsi CAST menerima dua parameter Parameter pertama ialah nilai yang perlu ditukar jenis, dan parameter kedua ialah jenis data sasaran yang perlu ditukar. Contohnya, untuk menukar nombor 123 kepada jenis rentetan, anda boleh menggunakan penyataan berikut:

SELECT CAST(123 AS CHAR);
Salin selepas log masuk

Di sini, kami menukar nombor 123 kepada rentetan jenis CHAR.

Seterusnya, mari kita lihat penggunaan fungsi CONVERT. Fungsi CONVERT juga menerima dua parameter Parameter pertama ialah nilai yang perlu ditukar jenis, dan parameter kedua ialah jenis data sasaran yang perlu ditukar. Contohnya, untuk menukar nombor 123 kepada jenis rentetan, anda boleh menggunakan penyataan berikut:

SELECT CONVERT(123, CHAR);
Salin selepas log masuk

Di sini, kami menukar nombor 123 kepada rentetan jenis CHAR.

  1. Penukaran jenis nombor apabila mengimport data

Apabila mengimport data, data sumber selalunya disimpan dalam fail CSV atau fail Excel dan nombor dalam fail ini Data selalunya disimpan dalam bentuk rentetan. Apabila mengimport data ke dalam MySQL, data rentetan ini perlu ditukar kepada jenis data berangka yang disokong oleh MySQL.

Sebagai contoh, apabila mengimport data menggunakan perintah LOAD DATA INFILE MySQL, kita boleh menggunakan klausa SET untuk menentukan jenis data setiap lajur. Sebagai contoh, katakan kita mempunyai fail bernama sample.csv yang mengandungi data berikut:

"1001","John","Doe","30"
"1002","Jane","Doe","25"
Salin selepas log masuk

Kita boleh menggunakan arahan berikut untuk mengimport data ke dalam pangkalan data MySQL yang dipanggil jadual jualan:

LOAD DATA INFILE 'sample.csv'
INTO TABLE sales
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS
(@col1, @col2, @col3, @col4)
SET
    id = CAST(@col1 AS INT),
    first_name = @col2,
    last_name = @col3,
    age = CAST(@col4 AS INT)
;
Salin selepas log masuk

Di sini, kami menggunakan fungsi CAST untuk menukar @col1 dan @col4 kepada nombor jenis INT dan kemudian memasukkan nilai ke dalam lajur id dan umur. Memandangkan first_name dan last_name ialah lajur jenis rentetan, kami tidak perlu melakukan penukaran jenis.

Sudah tentu, sebagai tambahan kepada fungsi CAST, kita juga boleh menggunakan fungsi CONVERT atau operator untuk melakukan penukaran jenis angka apabila mengimport data.

Ringkasnya, apabila kita perlu melakukan penukaran jenis angka dalam MySQL, kita boleh menggunakan CAST, CONVERT atau operator. Apabila mengimport data, kami juga boleh menggunakan klausa SET untuk menentukan jenis data setiap lajur. Dengan menguasai kaedah ini, kami boleh mengendalikan data jenis berangka dengan lebih fleksibel dan menyesuaikannya dengan keperluan perniagaan kami.

Atas ialah kandungan terperinci Bagaimana untuk menukar jenis angka dalam MySQL. 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