En este artículo, verá cómo funciona la función TRUNCATE(). La función TRUNCATE en MySQL se usa para truncar un número a un número específico de lugares decimales.
Sintaxis:
TRUNCATE( X, D)
Parámetro: La
función TRUNCATE() acepta dos parámetros como se mencionó anteriormente y se describe a continuación.
- X: el número que se va a truncar.
- D: número de lugares decimales hasta los que se debe truncar el número dado. Si es 0, elimina todos los valores decimales y devuelve solo el número entero. Si es negativo, el número se trunca al lado izquierdo del punto decimal.
Devoluciones:
devuelve el número después de truncado en los lugares especificados.
Ejemplo-1:
Truncar un número cuando D es 0.
Truncar un número negativo –
SELECT TRUNCATE(-10.11, 0) AS Truncated_Number ;
Producción :
+------------------+ | Truncated_Number | +------------------+ | -10 | +------------------+
Truncar un número positivo –
SELECT TRUNCATE(100.61, 0) AS Truncated_Number ;
Producción :
+------------------+ | Truncated_Number | +------------------+ | 100 | +------------------+
Ejemplo-2:
Truncar un número cuando D es negativo (-ve).
Truncar un número negativo –
SELECT TRUNCATE(-19087.1560, -3) AS Truncated_Number;
Producción :
+------------------+ | Truncated_Number | +------------------+ | -19000 | +------------------+ 1 row in set (0.00 sec)
Truncar un número positivo –
SELECT TRUNCATE(10876.5489, -1) AS Truncated_Number;
Producción :
+------------------+ | Truncated_Number | +------------------+ | 10870 | +------------------+
Ejemplo-3:
Truncar un número cuando D es positivo (+ ve).
Truncar un número negativo hasta 2 decimales –
SELECT TRUNCATE(-7767.1160, 2) AS Truncated_Number;
Producción :
+------------------+ | Truncated_Number | +------------------+ | -7767.11 | +------------------+ 1 row in set (0.00 sec)
Truncar un número positivo hasta 3 decimales –
mysql> SELECT TRUNCATE(17646.6019, 3) AS Truncated_Number;
Producción :
+------------------+ | Truncated_Number | +------------------+ | 17646.601 | +------------------+
Ejemplo-4:
La función TRUNCATE también se puede usar para encontrar los valores truncados para los datos de la columna. En este ejemplo, vamos a encontrar valores truncados para la columna Precio. Para demostrar crear una tabla llamada Producto
CREATE TABLE Product ( Product_id INT AUTO_INCREMENT, Product_name VARCHAR(100) NOT NULL, Buying_price DECIMAL(13, 6) NOT NULL, Selling_price DECIMAL(13, 6) NOT NULL, Selling_Date Date NOT NULL, PRIMARY KEY(Product_id) );
Ahora insertando algunos datos en la tabla Producto:
INSERT INTO Product(Product_name, Buying_price, Selling_price, Selling_Date) VALUES ('P6', 1060.865460, 1700.675400, '2020-08-26' ), ('P2', 2000.154300, 3050.986700, '2020-08-27' ), ('P1', 4000.874300, 5070.786500, '2020-08-28' ), ('P2', 2090.654300, 3050.896500, '2020-09-01' ), ('P3', 5900.543280, 7010.654700, '2020-09-04' ), ('P4', 4000.353200, 4500.125400, '2020-09-05' ), ('P5', 5010.768900, 6000.873200, '2020-09-08' ), ('P6', 1060.865460, 1400.675430, '2020-09-11' );
Entonces, la tabla de productos es:
mysql> SELECT * FROM Product;
Producción :
+------------+--------------+--------------+---------------+--------------+ | Product_id | Product_name | Buying_price | Selling_price | Selling_Date | +------------+--------------+--------------+---------------+--------------+ | 1 | P6 | 1060.865460 | 1700.675400 | 2020-08-26 | | 2 | P2 | 2000.154300 | 3050.986700 | 2020-08-27 | | 3 | P1 | 4000.874300 | 5070.786500 | 2020-08-28 | | 4 | P2 | 2090.654300 | 3050.896500 | 2020-09-01 | | 5 | P3 | 5900.543280 | 7010.654700 | 2020-09-04 | | 6 | P4 | 4000.353200 | 4500.125400 | 2020-09-05 | | 7 | P5 | 5010.768900 | 6000.873200 | 2020-09-08 | | 8 | P6 | 1060.865460 | 1400.675430 | 2020-09-11 | | 9 | P6 | 1060.865460 | 1700.675400 | 2020-08-26 | | 10 | P2 | 2000.154300 | 3050.986700 | 2020-08-27 | | 11 | P1 | 4000.874300 | 5070.786500 | 2020-08-28 | | 12 | P2 | 2090.654300 | 3050.896500 | 2020-09-01 | | 13 | P3 | 5900.543280 | 7010.654700 | 2020-09-04 | | 14 | P4 | 4000.353200 | 4500.125400 | 2020-09-05 | | 15 | P5 | 5010.768900 | 6000.873200 | 2020-09-08 | | 16 | P6 | 1060.865460 | 1400.675430 | 2020-09-11 | +------------+--------------+--------------+---------------+--------------+
Ahora, vamos a truncar las columnas Buying_price y Selling_price hasta 2 decimales.
SELECT Product_name, Buying_price, TRUNCATE(Buying_price, 2) Trucated_Bprice, Selling_price, TRUNCATE(Selling_price, 2) Trucated_Sprice FROM Product ;
Producción :
+--------------+--------------+-----------------+---------------+-----------------+ | Product_name | Buying_price | Trucated_Bprice | Selling_price | Trucated_Sprice | +--------------+--------------+-----------------+---------------+-----------------+ | P6 | 1060.865460 | 1060.86 | 1700.675400 | 1700.67 | | P2 | 2000.154300 | 2000.15 | 3050.986700 | 3050.98 | | P1 | 4000.874300 | 4000.87 | 5070.786500 | 5070.78 | | P2 | 2090.654300 | 2090.65 | 3050.896500 | 3050.89 | | P3 | 5900.543280 | 5900.54 | 7010.654700 | 7010.65 | | P4 | 4000.353200 | 4000.35 | 4500.125400 | 4500.12 | | P5 | 5010.768900 | 5010.76 | 6000.873200 | 6000.87 | | P6 | 1060.865460 | 1060.86 | 1400.675430 | 1400.67 | | P6 | 1060.865460 | 1060.86 | 1700.675400 | 1700.67 | | P2 | 2000.154300 | 2000.15 | 3050.986700 | 3050.98 | | P1 | 4000.874300 | 4000.87 | 5070.786500 | 5070.78 | | P2 | 2090.654300 | 2090.65 | 3050.896500 | 3050.89 | | P3 | 5900.543280 | 5900.54 | 7010.654700 | 7010.65 | | P4 | 4000.353200 | 4000.35 | 4500.125400 | 4500.12 | | P5 | 5010.768900 | 5010.76 | 6000.873200 | 6000.87 | | P6 | 1060.865460 | 1060.86 | 1400.675430 | 1400.67 | +--------------+--------------+-----------------+---------------+-----------------+
Publicación traducida automáticamente
Artículo escrito por jana_sayantan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA