繁体   English   中英

Oracle SQL Concatenate字符串基于另一列的值

[英]Oracle SQL Concatenate string based of value of another column

我试过查找这个问题,但也许我只是没有正确搜索。

我想知道在SQL中是否可以根据同一行中另一列的结果进行连接。 让我举个例子吧

+-------------+------------+--------+
|    STATE    |    CITY    | Region |
+-------------+------------+--------+
| Georgia     | Atlanta    | East   |
| Los Angeles | California | West   |
+-------------+------------+--------+

假设我有这个表,我想通过做某种连接来创建一个新列

输出应该如下所示

+-----------+------------+-------------+--------+
|   SIDE    |   STATE    |    CITY     | Region |
+-----------+------------+-------------+--------+
| East_Side | Georgia    | Atlanta     | East   |
| West_Side | California | Los Angeles | West   |
+-----------+------------+-------------+--------+

所以Side列应该查看区域并询问它是什么区域? 然后说好,所以这是“?_Side”然后连接相应的“Region_Side”=“East_Side”

这只是一个简单的例子,我知道在这个例子中我可以使用case语句但是在我的实际应用程序中我不能因为它有很多“区域”

这是可能的还是没有?

这样做你想要的吗?

select Region || '_Side', state, city, region
from t;

|| 是Oracle中的字符串连接运算符(以及标准SQL中的字符串连接运算符)。

只需使用列并连接字符串

select  region ||'_Side', STATE ,  CITY , Region
from my_table  

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM