我想将英尺和英寸转换为厘米格式
我的数据库中的格式是:
4'6" (4 feet, 6 inches)
换算厘米的公式
4*30.48 = 121.92 (convert feet to centimeters = multiply by 30.48)
6*2.54 = 15.24 (convert inches to centimeters = multiply by 2.54)
So Result = 121.92 + 15.24 = 137.16 cm
例如:
实际表:英寸
SELECT * FROM inches
id height
1 4'6"
2 4'7"
3 5'8"
4 5'9"
当我执行 SQL 查询时,我期望以下结果为厘米
id height
1 137.16
2 139.7
3 172.72
4 175.26
提前致谢:)
最佳答案
在应用程序级别上可能更容易做到,但如果您确实必须这样做,您可以像这样在 SQL 中使用 SUBSTR
来完成此操作。和 INSTR
函数和一些基本数学:
SET @height = '4''6"';
SELECT
SUBSTR(@height, 1, INSTR(@height, '''') - 1) * 12 * 2.54 +
SUBSTR(@height, INSTR(@height, '''') + 1, INSTR(@height, '"') - INSTR(@height, '''') - 1) * 2.54;
-- yields 137.16
或者,应用于您的表结构:
SELECT id,
SUBSTR(height, 1, INSTR(height, '''') - 1) * 12 * 2.54 +
SUBSTR(height, INSTR(height, '''') + 1, INSTR(height, '"') - INSTR(height, '''') - 1) * 2.54 AS height
FROM inches;
关于MySQL 将高度格式转换为厘米,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32492952/