代码之家  ›  专栏  ›  技术社区  ›  nickik

SQL列到字符串

sql
  •  2
  • nickik  · 技术社区  · 14 年前

    Select ID, TEXT, 1, 2, 3, 4, 5, 6, 7 from blabla
    

    但我需要的是一个有3列的查询

    Select ID, TEXT, STRING(1, 2, 3, 4, 5, 6, 7) from blabla
    

    编辑:

    额外问题:

    7 回复  |  直到 14 年前
        1
  •  2
  •   Matt Mitchell    14 年前

    In T-SQL / MS-SQL:

    # With Space
    SELECT ID, TEXT, 
      (1 + ' ' + 2 + ' ' + 3 + ' ' + 4 ' ' + 5 + ' ' + 6 + ' ' + 7) as Merged 
    FROM blabla
    
    # Without Space
    SELECT ID, TEXT, 
      (1 + 2 + 3 + 4 + 5 + 6 + 7) as Merged 
    FROM blabla
    

    In My-SQL:

    # With Space
    SELECT ID, TEXT, 
      CONCAT_WS(' ', 1, 2, 3 , 4, 5, 6, 7) as Merged 
    FROM blabla
    
    # Without Space
    SELECT ID, TEXT, 
      CONCAT(1, 2, 3 , 4, 5, 6, 7) as Merged 
    FROM blabla
    

    In PL-SQL/Oracle:

    # With Space
    SELECT ID, TEXT, 
      1 || ' ' || 2 || ' ' || 3 || ' ' || 4 || ' ' || 5 || ' ' || 6 || ' ' || 7 as Merged 
    FROM blabla
    
    # Without Space
    SELECT ID, TEXT, 
      1 || 2 || 3 || 4 || 5 || 6 || 7 as Merged 
    FROM blabla
    
        2
  •  1
  •   krock    14 年前

    t-sql :

    Select ID, TEXT, 1 + 2 + 3 + 4 + 5 + 6 + 7 from blabla
    

    PL-SQL :

    Select ID, TEXT, 1 || 2 || 3 || 4 || 5 || 6 || 7 from blabla
    

    MySQL :

    Select ID, TEXT, CONCAT(1, 2, 3, 4, 5, 6, 7) from blabla
    

        3
  •  0
  •   Simon Hughes    14 年前

    假设1-7是字符串字段,只需使用+字符连接字符串:

    Select ID, TEXT, 1 + ' ' + 2 + ' ' + 3 + ' ' +
    4 + ' ' + 5 + ' ' + 6 + ' ' + 7 as YourFieldName from blabla
    

    我在字段之间加入了空格,但是您也可以提供逗号或其他分隔符。

        4
  •  0
  •   Toto    14 年前

    如果我的理解是正确的:

    从blabla中选择ID,TEXT,'1,2,3,4,5,6,7';

        5
  •  0
  •   Samiksha    14 年前

    从blabla中选择ID、TEXT、'1'、'2'、'3'、'4'、'5'、'6'、'7';

        6
  •  0
  •   Mark Baker    14 年前
    Select ID, 
           TEXT, 
           CONCAT_WS(',', 1, 2, 3, 4, 5, 6, 7) as Concatenated
      from blabla 
    

    Select ID, 
           TEXT, 
           CONCAT(1, ',', 2, ',', 3, ',', 4, ',', 5, ',', 6, ',', 7) as Concatenated
      from blabla 
    

    在MySQL中

    Select ID, 
           TEXT, 
           1 || ',' || 2 || ',' || 3 || ',' || 4 || ',' || 5 || ',' || 6 || ',' || 7) as Concatenated
      from blabla 
    

    在甲骨文中

        7
  •  0
  •   Moritz    14 年前

    我认为用逗号代替加号是不可能的