MySQL 行行比较sql写法
原文: https://www.cnblogs.com/youzhibing/p/15101096.html
多字段 组成的list 查询数据库
# 字符串 * 1 转数值
SELECT * FROM
(SELECT * FROM
`icbc_auto_charge_amount_config`
WHERE
( type, is_default ) IN ((1, 0),(2,0))
) t ORDER BY t.type, t.amount * 1 ;
# 字符串 + 0 转数值
SELECT * FROM
(SELECT * FROM
`icbc_auto_charge_amount_config`
WHERE ( type, is_default ) IN ((1, 0),(2,0))
) t ORDER BY t.type, t.amount + 0 ;
WHERE ( type, is_default ) IN ((1, 0),(2,0)) 这种写法是SQL-92 中行与行比较功能
说明字符串类型 + 0 或者 * 0 转换成数值型排序 这里amount是varchar类型
结果如下
古人学问无遗力,少壮工夫老始成。
纸上得来终觉浅,绝知此事要躬行。