gpt4 book ai didi

sql-server - 连接字符串并合并

转载 作者:行者123 更新时间:2023-12-03 13:17:02 25 4
gpt4 key购买 nike

我有一个从三个不同表中选择行的查询:TableATableBTableC

我的查询的一个字段必须是每个表中字段 Name 的串联,如以下别名:

SELECT
A.Name,
B.Name,
C.Name,
CONCAT(A.Name, ' / ', B.Name, ' / ', C.Name) AS Full_name
FROM ...

查询使用 LEFT OUTER JOIN 连接三个表。在某些情况下,如果其中一个表没有下表中的条目,我会得到奇怪的结果:

--------------------------
|Table A |Table B|Table C|
--------------------------
|My |Name | |
--------------------------
|My | |Is |
--------------------------
|My |Name |Is |
--------------------------

尾随/像这样可见:

1) My / Name /
2) My / / Is
3) My / Name / Is

我应该生成以下结果,但我不想使用 CASE,所以我想知道我是否可以同时使用 COALESCE、ISNULL 和 CONCAT

预期结果

1) My / Name
2) My / Is
3) My / Name / Is

最佳答案

添加 '/' 和 Name 时,如果 name 为 null,则返回 null。因此,您只需添加即可删除它们。

试试这个:

SELECT
A.Name,
B.Name,
C.Name,
CONCAT(A.Name, ' / '+ B.Name, ' / '+ C.Name) AS Full_name
FROM
...

sample 在 Fiddle .

关于sql-server - 连接字符串并合并,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28695104/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com