如果列表中有任何其他列SELECT
,则不能使用纯星号 ( *
)。您必须使用表名或别名:
SELECT REPLACE(PROFESSION,'-','/') , info.* from INFO;
我猜你想要的是:
SELECT name, city, REPLACE(PROFESSION,'-','/') AS profession FROM info;
测试:
CREATE TABLE info (
name VARCHAR2(20),
city VARCHAR2(20),
profession VARCHAR2(20)
);
INSERT INTO info VALUES ('A', 'New-Mexico', 'Software-Developer');
INSERT INTO info VALUES ('B', 'Tampa', 'Software-Analyst');
COMMIT;
SELECT name, city, REPLACE(PROFESSION,'-','/') AS profession FROM info;
输出:
名称 城市 职业
-------------------- -------- ---------- ----------
新墨西哥软件/开发者
B 坦帕软件/分析师
Oracle SQLFiddle
MySQL SQLFiddle