Forum Discussion

SteveApa's avatar
SteveApa
Frequent Visitor
1 year ago
Solved

Create a string Column in Advanced Editor

Hi All...

How do I create a new column (named Type) in advanced editor and set it to a string value?  

let
Source = Sql.Database("XXXXXX", "YYY", [Query="
select
[Proj] as ""Proj#"",

null as ""Type"" -- this works

8 as ""Type"" - this works
""special"" as ""Type"" -- this does not.  How to do this?
from
[mytable] 
"])
in
Source

 

  • Sorry... But you are all incorrect.  I had a different typo.  It does work to assign a "string" to a new column in a select statemement:

    let
        Source = Sql.Database("xxxx", "yyy", [Query="
            select
                  'GDC' as ""Type""
            from
                [table1] 

            union
            select
                'bill' as [Type]
            from
                [table2] bill
          "])
    in
        Source

     

     

3 Replies

  • If I remember well, you cannot

    You have to add the text column with 

    AddedTypeColumn = Table.AddColumn(Source, "Type", each "special", type text)


    NULL and numeric values are often handled seamlessly because they are less ambiguous.

  • v-ssriganesh's avatar
    v-ssriganesh
    Community Support

    Hello SteveApa,
    Thank you for reaching out to the Microsoft Fabric Community forum.

    Also thanks you, Cookistador for the great insight. string values cannot be directly assigned in the SQL query within Power Query. Instead, you’ll need to add the text column within Power Query after retrieving the data.

    • NULL and numeric values work in SQL because they are less ambiguous.
    • String values require explicit handling within Power Query.
    • The best approach is to add the new column after loading the data into Power Query.


    If this information is helpful, please “Accept it as a solution” and give a "kudos" to assist other community members in resolving similar issues more efficiently.
    Thank you.

  • SteveApa's avatar
    SteveApa
    Frequent Visitor

    Sorry... But you are all incorrect.  I had a different typo.  It does work to assign a "string" to a new column in a select statemement:

    let
        Source = Sql.Database("xxxx", "yyy", [Query="
            select
                  'GDC' as ""Type""
            from
                [table1] 

            union
            select
                'bill' as [Type]
            from
                [table2] bill
          "])
    in
        Source