Nor*_*rse 1 mysql varchar casting
我有一个名为的专栏 D1_VAL
此列中的行包含如下所示的数据:
C:10
R:200
E:3
N:77
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用逻辑运算符搜索这些值.我试过这个:
SELECT * FROM d1 WHERE CAST(`D1_VAL` AS UNSIGNED) > 5
Run Code Online (Sandbox Code Playgroud)
它不会返回任何行.我也尝试过:
SELECT * FROM d1 WHERE (0 + `D1_VAL`) > 5
Run Code Online (Sandbox Code Playgroud)
我该怎么做呢?
这个查询会做,
SELECT * FROM d1 WHERE CAST(SUBSTRING(`D1_VAL`, 3) AS UNSIGNED) > 5
Run Code Online (Sandbox Code Playgroud)
但最好将值标准化C:10为两个单独的列.
create table d1(
letter char(1),
number int,
// ... other columns
)
Run Code Online (Sandbox Code Playgroud)