我有一个mysql查询
select host, domain from table
Output:
host domain
host1.abc.com abc.com
host2.abc.com null
我想更改查询,以便通过去除domain
部分从第一列中获得host
值。我不想从表中查询domain
值,因为其中一些为空
这样host - host2.abc.com
的域将是
abc.com
答案 0 :(得分:1)
DROP TABLE bleach;
CREATE TABLE bleach (`host` VARCHAR(50) NOT NULL);
INSERT INTO bleach (`host`) VALUES ('host1.abc.com');
INSERT INTO bleach (`host`) VALUES ('host29.abcdefg.com');
SELECT * FROM bleach;
SELECT `host`, SUBSTRING_INDEX(`host`,'.',-2) FROM bleach;
输出:
host SUBSTRING_INDEX(`host`,'.',-2)
host1.abc.com abc.com
host29.abcdefg.com abcdefg.com