查询结果只是数字,它很容易通过读取并理解它们是否为字符串。 如何在查询结果中标记数字的String等效项。
数字与字符串的映射必须位于查询中。
从表中选择num; 查询结果为9,2,4,7。 字符串文字将映射到此数字。 num范围是{0-9} 0-Prepaid,1 -postpaid like wise
答案 0 :(得分:2)
您可以像这样使用CASE
表达式:
SELECT
...
CASE
WHEN 1 THEN 'Postpaid'
WHEN 2 THEN 'prepaid'
...
END
...
您也可以使用临时表来执行此操作,例如:
DECLARE @t Table(NumberToReplace INT, replacewith VARCHAR(50));
INSERT INTO @t VALUES
(1, 'Postpaid'),
(2, 'Prepaid'),
...
然后你可以JOIN
这两个表用相应的字符串替换数字:
SELECT
t1.Column1, t1.Column1, t2.replacewith
FROM YourTable t1
LEFT JOIN temp t2 ON t1.NumberToReplace = t2.NumberToReplace
我使用LEFT JOIN
为另一个表中没有相应字符串的数字提供NULL
值。
答案 1 :(得分:1)
SELECT id, IF(my_field REGEXP '[digit]', 'is_string', 'is_numeric') as result
FROM my_Table