仅从sql中的地址列获取数字

时间:2015-03-10 06:08:33

标签: mysql sql

实际上在我的情况下,我需要从地址字符串中选择街道号码,这意味着如果字符串是' 1234 dummy789 road',我只想得到{{1} }',而不是' 1234'另一个例子是' 1234789'那时我只想要' Plot 111 dummy 1220'。如果字符串是' 111'然后我想得到' 111/2 dummy'

我试过以下:

111/2

2 个答案:

答案 0 :(得分:0)

    <?php
        $ab = "1225584454 red 1555  blue";
        $result = explode(" ", $ab, 2);
        print_r($result);
    ?>

Screenshot of the values

在这种情况下,这将为您提供变量中的第一个字符串。

答案 1 :(得分:0)

假设您有民事号码,后跟空格和街道名称,我建议如下: 将WHERE语句与REGEXP放在一起以获取那些以数字后跟空格开头的语句。并且在返回的字段中只获得带子字符串的数字部分。

这样的事情:

SELECT SUBSTRING(address, 0,  LOCATE(' ', address)) FROM items WHERE `address` REGEXP '^[0-9]+ '>0;

校正:

SELECT TRIM(LEFT(address, LOCATE(' ', address))) FROM items WHERE `address` REGEXP '^[0-9]+ '>0;