【问题标题】:How can i merge two fields shown as one in an output of an sql view statement?如何合并在 sql 视图语句的输出中显示为一个的两个字段?
【发布时间】:2012-08-13 09:56:33
【问题描述】:

我有一个表,其中包含学生 ID 和他们各自的教师 ID。我想向学生展示他们的老师。为此,我通过另外两个名为:Honarjo as for student 和 Morabi as for teacher 的表格来获取学生和老师的名字。 我的问题是,我想让老师的名字作为一个文件而不是两个单独的名称和家庭字段。 这是我的 Sql 代码供查看:

SELECT        dbo.tblHonarjo.CodeMeli, dbo.tblHonarjo.Name, dbo.tblHonarjo.Family, 

dbo.tblHonarjo.PhoneHome, dbo.tblHonarjo.Mobile, dbo.tblMorabi.Name AS TeacherName, 
                         dbo.tblMorabi.Family AS TeacherFamily
FROM            dbo.tblStudentnDriver INNER JOIN
                         dbo.tblHonarjo ON dbo.tblStudentnDriver.SID = dbo.tblHonarjo.CodeMeli INNER JOIN
                         dbo.tblMorabi ON dbo.tblStudentnDriver.TID = dbo.tblMorabi.CodeMeli

【问题讨论】:

    标签: sql view


    【解决方案1】:

    您可以使用函数CONCAT(value1, value2, value3) 连接字段。

    例如,在您的情况下,您可能希望使用CONCAT(TeacherName, " ", TeacherFamily) 来显示此格式<TeacherName> <TeacherFamily>

    【讨论】:

    • 谢谢。但是 CONCAT 只接受两个参数,如何在两个字段之间添加空格?
    • True, CONCAT(TeacherName, CONCAT(" ", TeacherFamily)) 可以解决问题 :) 如果数据库支持的话,似乎更容易使用 +!
    【解决方案2】:

    根据你使用的数据库类型,应该有某种形式的连接运算符,例如在 Postgres 中它是 ||,所以你可以这样做

    dbo.tblHonarjo.Name || dbo.tblHonarjo.Family

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-27
      • 2023-02-07
      • 1970-01-01
      • 2014-06-18
      • 1970-01-01
      • 2011-05-22
      • 2021-05-02
      • 1970-01-01
      相关资源
      最近更新 更多