Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memotong, Bukan Bulat, Tempat Perpuluhan dalam Pelayan SQL?

Bagaimana untuk Memotong, Bukan Bulat, Tempat Perpuluhan dalam Pelayan SQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-15 07:33:44785semak imbas

How to Truncate, Not Round, Decimal Places in SQL Server?

SQL Server: Ketepatan dalam Pengendalian Perpuluhan – Pemangkasan lwn. Pembundaran

Pengiraan perpuluhan yang tepat dalam SQL Server selalunya memerlukan pemilihan antara pemotongan dan pembundaran. Panduan ini memperincikan perbezaan utama dan menunjukkan cara memotong nilai perpuluhan tanpa pembundaran.

Contoh Ilustrasi:

<code class="language-sql">DECLARE @value DECIMAL(18,2);
SET @value = 123.456;</code>

SQL Server secara automatik membundarkan @value kepada 123.46. Walaupun sesuai untuk banyak aplikasi, senario wujud di mana pembundaran tidak diingini, memerlukan pemangkasan.

Teknik Pemangkasan Berkesan

1. Memanfaatkan Fungsi ROUND:

Fungsi ROUND menawarkan ciri halus namun berkuasa: parameter ketiga mengawal pemotongan.

<code class="language-sql">ROUND(123.456, 2, 1);</code>

Parameter bukan sifar ketiga mengarahkan ROUND untuk memotong dan bukannya membulat.

2. Menggunakan CAST dan CONVERT:

Menghantar atau menukar perpuluhan kepada jenis integer secara langsung memotong bahagian perpuluhan:

<code class="language-sql">CAST(@value AS INT);
CONVERT(INT, @value);</code>

3. Manipulasi Rentetan dengan SUBSTRING atau KIRI:

Ekstrak bahagian yang diingini menggunakan SUBSTRING atau LEFT, kemudian tukar semula kepada perpuluhan:

<code class="language-sql">SUBSTRING(@value, 1, 4);
LEFT(@value, 4);</code>

4. Menggunakan Fungsi FLOOR:

Fungsi FLOOR, digabungkan dengan pendaraban dan pembahagian, menyediakan kaedah pemangkasan lain:

<code class="language-sql">FLOOR(@value * 100) / 100;</code>

Ini dengan berkesan memendekkan kepada dua tempat perpuluhan. Ingat untuk melaraskan pengganda dan pembahagi untuk tahap ketepatan yang berbeza.

Atas ialah kandungan terperinci Bagaimana untuk Memotong, Bukan Bulat, Tempat Perpuluhan dalam Pelayan SQL?. 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