1. Packages
  2. Snowflake Provider
  3. API Docs
  4. SemanticView
Snowflake v2.12.0 published on Friday, Feb 13, 2026 by Pulumi
snowflake logo
Snowflake v2.12.0 published on Friday, Feb 13, 2026 by Pulumi

    !> Caution: Preview Feature This feature is considered a preview feature in the provider, regardless of the state of the resource in Snowflake. We do not guarantee its stability. It will be reworked and marked as a stable feature in future releases. Breaking changes are expected, even without bumping the major version. To use this feature, add the relevant feature name to preview_features_enabled field in the provider configuration. Please always refer to the Getting Help section in our Github repo to best determine how to get help for your questions.

    !> Case-sensitive names Object names, column names, and aliases are case-sensitive. The provider would wrap them in double quotes when running SQL on Snowflake. Keep it in mind when defining the semantic view (check the example usage).

    Note The ALTER SEMANTIC VIEW does not currently handle changes to dimensions, facts, metrics, relationships, and tables. It means that all changes to these attributes will be handled as destroy and recreate.

    Note External changes for dimensions, facts, metrics, relationships, and tables are not currently handled. Support for this functionality will be added in the next versions of the provider before moving this resource out of preview.

    Note PRIVATE/PUBLIC qualifiers for semantic expressions are not currently supported. They are treated as PUBLIC by default. Support for this functionality will be added in the next versions of the provider before moving this resource out of preview.

    Note Excluding dimensions in window_function:over_clause:partition_by clause is not currently supported. Support for this functionality will be added in the next versions of the provider before moving this resource out of preview.

    Note The window_function:over_clause:order_by clause must be a complete SQL expression, including any [ ASC | DESC ] [ NULLS { FIRST | LAST } ] modifiers. It will be broken down in the next versions of the provider before moving this resource out of preview.

    Note COPY GRANTS and OR REPLACE are not currently supported.

    Note Output from the DESCRIBE SEMANTIC VIEW is not currently available.

    Resource used to manage semantic views. For more information, check semantic views documentation.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as snowflake from "@pulumi/snowflake";
    
    // basic resource
    const basic = new snowflake.SemanticView("basic", {
        database: "DATABASE",
        schema: "SCHEMA",
        name: "SEMANTIC_VIEW",
        metrics: [{
            semanticExpression: {
                qualifiedExpressionName: "\"lt1\".\"m1\"",
                sqlExpression: "SUM(\"lt1\".\"a1\")",
            },
        }],
        tables: [{
            tableAlias: "lt1",
            tableName: test.fullyQualifiedName,
        }],
    });
    // complete resource
    const complete = new snowflake.SemanticView("complete", {
        database: "DATABASE",
        schema: "SCHEMA",
        name: "SEMANTIC_VIEW",
        comment: "comment",
        dimensions: [{
            comment: "dimension comment",
            qualifiedExpressionName: "\"lt1\".\"d2\"",
            sqlExpression: "\"lt1\".\"a2\"",
            synonyms: ["dim2"],
        }],
        facts: [{
            comment: "fact comment",
            qualifiedExpressionName: "\"lt1\".\"f2\"",
            sqlExpression: "\"lt1\".\"a1\"",
            synonyms: ["fact2"],
        }],
        metrics: [
            {
                semanticExpression: {
                    comment: "semantic expression comment",
                    qualifiedExpressionName: "\"lt1\".\"m1\"",
                    sqlExpression: "SUM(\"lt1\".\"a1\")",
                    synonyms: [
                        "sem1",
                        "baseSem",
                    ],
                },
            },
            {
                windowFunction: {
                    overClause: {
                        partitionBy: "\"lt1\".\"d2\"",
                    },
                    qualifiedExpressionName: "\"lt1\".\"wf1\"",
                    sqlExpression: "SUM(\"lt1\".\"m1\")",
                },
            },
        ],
        relationships: [{
            referencedRelationshipColumns: [
                "a1",
                "a2",
            ],
            referencedTableNameOrAlias: {
                tableAlias: "lt1",
            },
            relationshipColumns: [
                "a1",
                "a2",
            ],
            relationshipIdentifier: "r2",
            tableNameOrAlias: {
                tableAlias: "lt2",
            },
        }],
        tables: [
            {
                comment: "logical table 1 comment",
                primaryKeys: ["a1"],
                synonyms: [
                    "orders",
                    "sales",
                ],
                tableAlias: "lt1",
                tableName: test.fullyQualifiedName,
                uniques: [
                    {
                        values: ["a2"],
                    },
                    {
                        values: [
                            "a3",
                            "a4",
                        ],
                    },
                ],
            },
            {
                comment: "logical table 2 comment",
                primaryKeys: ["a1"],
                tableAlias: "lt2",
                tableName: test2.fullyQualifiedName,
            },
        ],
    });
    
    import pulumi
    import pulumi_snowflake as snowflake
    
    # basic resource
    basic = snowflake.SemanticView("basic",
        database="DATABASE",
        schema="SCHEMA",
        name="SEMANTIC_VIEW",
        metrics=[{
            "semantic_expression": {
                "qualified_expression_name": "\"lt1\".\"m1\"",
                "sql_expression": "SUM(\"lt1\".\"a1\")",
            },
        }],
        tables=[{
            "table_alias": "lt1",
            "table_name": test["fullyQualifiedName"],
        }])
    # complete resource
    complete = snowflake.SemanticView("complete",
        database="DATABASE",
        schema="SCHEMA",
        name="SEMANTIC_VIEW",
        comment="comment",
        dimensions=[{
            "comment": "dimension comment",
            "qualified_expression_name": "\"lt1\".\"d2\"",
            "sql_expression": "\"lt1\".\"a2\"",
            "synonyms": ["dim2"],
        }],
        facts=[{
            "comment": "fact comment",
            "qualified_expression_name": "\"lt1\".\"f2\"",
            "sql_expression": "\"lt1\".\"a1\"",
            "synonyms": ["fact2"],
        }],
        metrics=[
            {
                "semantic_expression": {
                    "comment": "semantic expression comment",
                    "qualified_expression_name": "\"lt1\".\"m1\"",
                    "sql_expression": "SUM(\"lt1\".\"a1\")",
                    "synonyms": [
                        "sem1",
                        "baseSem",
                    ],
                },
            },
            {
                "window_function": {
                    "over_clause": {
                        "partition_by": "\"lt1\".\"d2\"",
                    },
                    "qualified_expression_name": "\"lt1\".\"wf1\"",
                    "sql_expression": "SUM(\"lt1\".\"m1\")",
                },
            },
        ],
        relationships=[{
            "referenced_relationship_columns": [
                "a1",
                "a2",
            ],
            "referenced_table_name_or_alias": {
                "table_alias": "lt1",
            },
            "relationship_columns": [
                "a1",
                "a2",
            ],
            "relationship_identifier": "r2",
            "table_name_or_alias": {
                "table_alias": "lt2",
            },
        }],
        tables=[
            {
                "comment": "logical table 1 comment",
                "primary_keys": ["a1"],
                "synonyms": [
                    "orders",
                    "sales",
                ],
                "table_alias": "lt1",
                "table_name": test["fullyQualifiedName"],
                "uniques": [
                    {
                        "values": ["a2"],
                    },
                    {
                        "values": [
                            "a3",
                            "a4",
                        ],
                    },
                ],
            },
            {
                "comment": "logical table 2 comment",
                "primary_keys": ["a1"],
                "table_alias": "lt2",
                "table_name": test2["fullyQualifiedName"],
            },
        ])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-snowflake/sdk/v2/go/snowflake"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// basic resource
    		_, err := snowflake.NewSemanticView(ctx, "basic", &snowflake.SemanticViewArgs{
    			Database: pulumi.String("DATABASE"),
    			Schema:   pulumi.String("SCHEMA"),
    			Name:     pulumi.String("SEMANTIC_VIEW"),
    			Metrics: snowflake.SemanticViewMetricArray{
    				&snowflake.SemanticViewMetricArgs{
    					SemanticExpression: &snowflake.SemanticViewMetricSemanticExpressionArgs{
    						QualifiedExpressionName: pulumi.String("\"lt1\".\"m1\""),
    						SqlExpression:           pulumi.String("SUM(\"lt1\".\"a1\")"),
    					},
    				},
    			},
    			Tables: snowflake.SemanticViewTableArray{
    				&snowflake.SemanticViewTableArgs{
    					TableAlias: pulumi.String("lt1"),
    					TableName:  pulumi.Any(test.FullyQualifiedName),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// complete resource
    		_, err = snowflake.NewSemanticView(ctx, "complete", &snowflake.SemanticViewArgs{
    			Database: pulumi.String("DATABASE"),
    			Schema:   pulumi.String("SCHEMA"),
    			Name:     pulumi.String("SEMANTIC_VIEW"),
    			Comment:  pulumi.String("comment"),
    			Dimensions: snowflake.SemanticViewDimensionArray{
    				&snowflake.SemanticViewDimensionArgs{
    					Comment:                 pulumi.String("dimension comment"),
    					QualifiedExpressionName: pulumi.String("\"lt1\".\"d2\""),
    					SqlExpression:           pulumi.String("\"lt1\".\"a2\""),
    					Synonyms: pulumi.StringArray{
    						pulumi.String("dim2"),
    					},
    				},
    			},
    			Facts: snowflake.SemanticViewFactArray{
    				&snowflake.SemanticViewFactArgs{
    					Comment:                 pulumi.String("fact comment"),
    					QualifiedExpressionName: pulumi.String("\"lt1\".\"f2\""),
    					SqlExpression:           pulumi.String("\"lt1\".\"a1\""),
    					Synonyms: pulumi.StringArray{
    						pulumi.String("fact2"),
    					},
    				},
    			},
    			Metrics: snowflake.SemanticViewMetricArray{
    				&snowflake.SemanticViewMetricArgs{
    					SemanticExpression: &snowflake.SemanticViewMetricSemanticExpressionArgs{
    						Comment:                 pulumi.String("semantic expression comment"),
    						QualifiedExpressionName: pulumi.String("\"lt1\".\"m1\""),
    						SqlExpression:           pulumi.String("SUM(\"lt1\".\"a1\")"),
    						Synonyms: pulumi.StringArray{
    							pulumi.String("sem1"),
    							pulumi.String("baseSem"),
    						},
    					},
    				},
    				&snowflake.SemanticViewMetricArgs{
    					WindowFunction: &snowflake.SemanticViewMetricWindowFunctionArgs{
    						OverClause: &snowflake.SemanticViewMetricWindowFunctionOverClauseArgs{
    							PartitionBy: pulumi.String("\"lt1\".\"d2\""),
    						},
    						QualifiedExpressionName: pulumi.String("\"lt1\".\"wf1\""),
    						SqlExpression:           pulumi.String("SUM(\"lt1\".\"m1\")"),
    					},
    				},
    			},
    			Relationships: snowflake.SemanticViewRelationshipArray{
    				&snowflake.SemanticViewRelationshipArgs{
    					ReferencedRelationshipColumns: pulumi.StringArray{
    						pulumi.String("a1"),
    						pulumi.String("a2"),
    					},
    					ReferencedTableNameOrAlias: &snowflake.SemanticViewRelationshipReferencedTableNameOrAliasArgs{
    						TableAlias: pulumi.String("lt1"),
    					},
    					RelationshipColumns: pulumi.StringArray{
    						pulumi.String("a1"),
    						pulumi.String("a2"),
    					},
    					RelationshipIdentifier: pulumi.String("r2"),
    					TableNameOrAlias: &snowflake.SemanticViewRelationshipTableNameOrAliasArgs{
    						TableAlias: pulumi.String("lt2"),
    					},
    				},
    			},
    			Tables: snowflake.SemanticViewTableArray{
    				&snowflake.SemanticViewTableArgs{
    					Comment: pulumi.String("logical table 1 comment"),
    					PrimaryKeys: pulumi.StringArray{
    						pulumi.String("a1"),
    					},
    					Synonyms: pulumi.StringArray{
    						pulumi.String("orders"),
    						pulumi.String("sales"),
    					},
    					TableAlias: pulumi.String("lt1"),
    					TableName:  pulumi.Any(test.FullyQualifiedName),
    					Uniques: snowflake.SemanticViewTableUniqueArray{
    						&snowflake.SemanticViewTableUniqueArgs{
    							Values: pulumi.StringArray{
    								pulumi.String("a2"),
    							},
    						},
    						&snowflake.SemanticViewTableUniqueArgs{
    							Values: pulumi.StringArray{
    								pulumi.String("a3"),
    								pulumi.String("a4"),
    							},
    						},
    					},
    				},
    				&snowflake.SemanticViewTableArgs{
    					Comment: pulumi.String("logical table 2 comment"),
    					PrimaryKeys: pulumi.StringArray{
    						pulumi.String("a1"),
    					},
    					TableAlias: pulumi.String("lt2"),
    					TableName:  pulumi.Any(test2.FullyQualifiedName),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Snowflake = Pulumi.Snowflake;
    
    return await Deployment.RunAsync(() => 
    {
        // basic resource
        var basic = new Snowflake.SemanticView("basic", new()
        {
            Database = "DATABASE",
            Schema = "SCHEMA",
            Name = "SEMANTIC_VIEW",
            Metrics = new[]
            {
                new Snowflake.Inputs.SemanticViewMetricArgs
                {
                    SemanticExpression = new Snowflake.Inputs.SemanticViewMetricSemanticExpressionArgs
                    {
                        QualifiedExpressionName = "\"lt1\".\"m1\"",
                        SqlExpression = "SUM(\"lt1\".\"a1\")",
                    },
                },
            },
            Tables = new[]
            {
                new Snowflake.Inputs.SemanticViewTableArgs
                {
                    TableAlias = "lt1",
                    TableName = test.FullyQualifiedName,
                },
            },
        });
    
        // complete resource
        var complete = new Snowflake.SemanticView("complete", new()
        {
            Database = "DATABASE",
            Schema = "SCHEMA",
            Name = "SEMANTIC_VIEW",
            Comment = "comment",
            Dimensions = new[]
            {
                new Snowflake.Inputs.SemanticViewDimensionArgs
                {
                    Comment = "dimension comment",
                    QualifiedExpressionName = "\"lt1\".\"d2\"",
                    SqlExpression = "\"lt1\".\"a2\"",
                    Synonyms = new[]
                    {
                        "dim2",
                    },
                },
            },
            Facts = new[]
            {
                new Snowflake.Inputs.SemanticViewFactArgs
                {
                    Comment = "fact comment",
                    QualifiedExpressionName = "\"lt1\".\"f2\"",
                    SqlExpression = "\"lt1\".\"a1\"",
                    Synonyms = new[]
                    {
                        "fact2",
                    },
                },
            },
            Metrics = new[]
            {
                new Snowflake.Inputs.SemanticViewMetricArgs
                {
                    SemanticExpression = new Snowflake.Inputs.SemanticViewMetricSemanticExpressionArgs
                    {
                        Comment = "semantic expression comment",
                        QualifiedExpressionName = "\"lt1\".\"m1\"",
                        SqlExpression = "SUM(\"lt1\".\"a1\")",
                        Synonyms = new[]
                        {
                            "sem1",
                            "baseSem",
                        },
                    },
                },
                new Snowflake.Inputs.SemanticViewMetricArgs
                {
                    WindowFunction = new Snowflake.Inputs.SemanticViewMetricWindowFunctionArgs
                    {
                        OverClause = new Snowflake.Inputs.SemanticViewMetricWindowFunctionOverClauseArgs
                        {
                            PartitionBy = "\"lt1\".\"d2\"",
                        },
                        QualifiedExpressionName = "\"lt1\".\"wf1\"",
                        SqlExpression = "SUM(\"lt1\".\"m1\")",
                    },
                },
            },
            Relationships = new[]
            {
                new Snowflake.Inputs.SemanticViewRelationshipArgs
                {
                    ReferencedRelationshipColumns = new[]
                    {
                        "a1",
                        "a2",
                    },
                    ReferencedTableNameOrAlias = new Snowflake.Inputs.SemanticViewRelationshipReferencedTableNameOrAliasArgs
                    {
                        TableAlias = "lt1",
                    },
                    RelationshipColumns = new[]
                    {
                        "a1",
                        "a2",
                    },
                    RelationshipIdentifier = "r2",
                    TableNameOrAlias = new Snowflake.Inputs.SemanticViewRelationshipTableNameOrAliasArgs
                    {
                        TableAlias = "lt2",
                    },
                },
            },
            Tables = new[]
            {
                new Snowflake.Inputs.SemanticViewTableArgs
                {
                    Comment = "logical table 1 comment",
                    PrimaryKeys = new[]
                    {
                        "a1",
                    },
                    Synonyms = new[]
                    {
                        "orders",
                        "sales",
                    },
                    TableAlias = "lt1",
                    TableName = test.FullyQualifiedName,
                    Uniques = new[]
                    {
                        new Snowflake.Inputs.SemanticViewTableUniqueArgs
                        {
                            Values = new[]
                            {
                                "a2",
                            },
                        },
                        new Snowflake.Inputs.SemanticViewTableUniqueArgs
                        {
                            Values = new[]
                            {
                                "a3",
                                "a4",
                            },
                        },
                    },
                },
                new Snowflake.Inputs.SemanticViewTableArgs
                {
                    Comment = "logical table 2 comment",
                    PrimaryKeys = new[]
                    {
                        "a1",
                    },
                    TableAlias = "lt2",
                    TableName = test2.FullyQualifiedName,
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.snowflake.SemanticView;
    import com.pulumi.snowflake.SemanticViewArgs;
    import com.pulumi.snowflake.inputs.SemanticViewMetricArgs;
    import com.pulumi.snowflake.inputs.SemanticViewMetricSemanticExpressionArgs;
    import com.pulumi.snowflake.inputs.SemanticViewTableArgs;
    import com.pulumi.snowflake.inputs.SemanticViewDimensionArgs;
    import com.pulumi.snowflake.inputs.SemanticViewFactArgs;
    import com.pulumi.snowflake.inputs.SemanticViewMetricWindowFunctionArgs;
    import com.pulumi.snowflake.inputs.SemanticViewMetricWindowFunctionOverClauseArgs;
    import com.pulumi.snowflake.inputs.SemanticViewRelationshipArgs;
    import com.pulumi.snowflake.inputs.SemanticViewRelationshipReferencedTableNameOrAliasArgs;
    import com.pulumi.snowflake.inputs.SemanticViewRelationshipTableNameOrAliasArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            // basic resource
            var basic = new SemanticView("basic", SemanticViewArgs.builder()
                .database("DATABASE")
                .schema("SCHEMA")
                .name("SEMANTIC_VIEW")
                .metrics(SemanticViewMetricArgs.builder()
                    .semanticExpression(SemanticViewMetricSemanticExpressionArgs.builder()
                        .qualifiedExpressionName("\"lt1\".\"m1\"")
                        .sqlExpression("SUM(\"lt1\".\"a1\")")
                        .build())
                    .build())
                .tables(SemanticViewTableArgs.builder()
                    .tableAlias("lt1")
                    .tableName(test.fullyQualifiedName())
                    .build())
                .build());
    
            // complete resource
            var complete = new SemanticView("complete", SemanticViewArgs.builder()
                .database("DATABASE")
                .schema("SCHEMA")
                .name("SEMANTIC_VIEW")
                .comment("comment")
                .dimensions(SemanticViewDimensionArgs.builder()
                    .comment("dimension comment")
                    .qualifiedExpressionName("\"lt1\".\"d2\"")
                    .sqlExpression("\"lt1\".\"a2\"")
                    .synonyms("dim2")
                    .build())
                .facts(SemanticViewFactArgs.builder()
                    .comment("fact comment")
                    .qualifiedExpressionName("\"lt1\".\"f2\"")
                    .sqlExpression("\"lt1\".\"a1\"")
                    .synonyms("fact2")
                    .build())
                .metrics(            
                    SemanticViewMetricArgs.builder()
                        .semanticExpression(SemanticViewMetricSemanticExpressionArgs.builder()
                            .comment("semantic expression comment")
                            .qualifiedExpressionName("\"lt1\".\"m1\"")
                            .sqlExpression("SUM(\"lt1\".\"a1\")")
                            .synonyms(                        
                                "sem1",
                                "baseSem")
                            .build())
                        .build(),
                    SemanticViewMetricArgs.builder()
                        .windowFunction(SemanticViewMetricWindowFunctionArgs.builder()
                            .overClause(SemanticViewMetricWindowFunctionOverClauseArgs.builder()
                                .partitionBy("\"lt1\".\"d2\"")
                                .build())
                            .qualifiedExpressionName("\"lt1\".\"wf1\"")
                            .sqlExpression("SUM(\"lt1\".\"m1\")")
                            .build())
                        .build())
                .relationships(SemanticViewRelationshipArgs.builder()
                    .referencedRelationshipColumns(                
                        "a1",
                        "a2")
                    .referencedTableNameOrAlias(SemanticViewRelationshipReferencedTableNameOrAliasArgs.builder()
                        .tableAlias("lt1")
                        .build())
                    .relationshipColumns(                
                        "a1",
                        "a2")
                    .relationshipIdentifier("r2")
                    .tableNameOrAlias(SemanticViewRelationshipTableNameOrAliasArgs.builder()
                        .tableAlias("lt2")
                        .build())
                    .build())
                .tables(            
                    SemanticViewTableArgs.builder()
                        .comment("logical table 1 comment")
                        .primaryKeys("a1")
                        .synonyms(                    
                            "orders",
                            "sales")
                        .tableAlias("lt1")
                        .tableName(test.fullyQualifiedName())
                        .uniques(                    
                            SemanticViewTableUniqueArgs.builder()
                                .values("a2")
                                .build(),
                            SemanticViewTableUniqueArgs.builder()
                                .values(                            
                                    "a3",
                                    "a4")
                                .build())
                        .build(),
                    SemanticViewTableArgs.builder()
                        .comment("logical table 2 comment")
                        .primaryKeys("a1")
                        .tableAlias("lt2")
                        .tableName(test2.fullyQualifiedName())
                        .build())
                .build());
    
        }
    }
    
    resources:
      # basic resource
      basic:
        type: snowflake:SemanticView
        properties:
          database: DATABASE
          schema: SCHEMA
          name: SEMANTIC_VIEW
          metrics:
            - semanticExpression:
                qualifiedExpressionName: '"lt1"."m1"'
                sqlExpression: SUM("lt1"."a1")
          tables:
            - tableAlias: lt1
              tableName: ${test.fullyQualifiedName}
      # complete resource
      complete:
        type: snowflake:SemanticView
        properties:
          database: DATABASE
          schema: SCHEMA
          name: SEMANTIC_VIEW
          comment: comment
          dimensions:
            - comment: dimension comment
              qualifiedExpressionName: '"lt1"."d2"'
              sqlExpression: '"lt1"."a2"'
              synonyms:
                - dim2
          facts:
            - comment: fact comment
              qualifiedExpressionName: '"lt1"."f2"'
              sqlExpression: '"lt1"."a1"'
              synonyms:
                - fact2
          metrics:
            - semanticExpression:
                comment: semantic expression comment
                qualifiedExpressionName: '"lt1"."m1"'
                sqlExpression: SUM("lt1"."a1")
                synonyms:
                  - sem1
                  - baseSem
            - windowFunction:
                overClause:
                  partitionBy: '"lt1"."d2"'
                qualifiedExpressionName: '"lt1"."wf1"'
                sqlExpression: SUM("lt1"."m1")
          relationships:
            - referencedRelationshipColumns:
                - a1
                - a2
              referencedTableNameOrAlias:
                tableAlias: lt1
              relationshipColumns:
                - a1
                - a2
              relationshipIdentifier: r2
              tableNameOrAlias:
                tableAlias: lt2
          tables:
            - comment: logical table 1 comment
              primaryKeys:
                - a1
              synonyms:
                - orders
                - sales
              tableAlias: lt1
              tableName: ${test.fullyQualifiedName}
              uniques:
                - values:
                    - a2
                - values:
                    - a3
                    - a4
            - comment: logical table 2 comment
              primaryKeys:
                - a1
              tableAlias: lt2
              tableName: ${test2.fullyQualifiedName}
    

    Note Instead of using fully_qualified_name, you can reference objects managed outside Terraform by constructing a correct ID, consult identifiers guide.

    Note If a field has a default value, it is shown next to the type in the schema.

    Create SemanticView Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new SemanticView(name: string, args: SemanticViewArgs, opts?: CustomResourceOptions);
    @overload
    def SemanticView(resource_name: str,
                     args: SemanticViewArgs,
                     opts: Optional[ResourceOptions] = None)
    
    @overload
    def SemanticView(resource_name: str,
                     opts: Optional[ResourceOptions] = None,
                     database: Optional[str] = None,
                     schema: Optional[str] = None,
                     tables: Optional[Sequence[SemanticViewTableArgs]] = None,
                     comment: Optional[str] = None,
                     dimensions: Optional[Sequence[SemanticViewDimensionArgs]] = None,
                     facts: Optional[Sequence[SemanticViewFactArgs]] = None,
                     metrics: Optional[Sequence[SemanticViewMetricArgs]] = None,
                     name: Optional[str] = None,
                     relationships: Optional[Sequence[SemanticViewRelationshipArgs]] = None)
    func NewSemanticView(ctx *Context, name string, args SemanticViewArgs, opts ...ResourceOption) (*SemanticView, error)
    public SemanticView(string name, SemanticViewArgs args, CustomResourceOptions? opts = null)
    public SemanticView(String name, SemanticViewArgs args)
    public SemanticView(String name, SemanticViewArgs args, CustomResourceOptions options)
    
    type: snowflake:SemanticView
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args SemanticViewArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args SemanticViewArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args SemanticViewArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args SemanticViewArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args SemanticViewArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var semanticViewResource = new Snowflake.SemanticView("semanticViewResource", new()
    {
        Database = "string",
        Schema = "string",
        Tables = new[]
        {
            new Snowflake.Inputs.SemanticViewTableArgs
            {
                TableAlias = "string",
                TableName = "string",
                Comment = "string",
                PrimaryKeys = new[]
                {
                    "string",
                },
                Synonyms = new[]
                {
                    "string",
                },
                Uniques = new[]
                {
                    new Snowflake.Inputs.SemanticViewTableUniqueArgs
                    {
                        Values = new[]
                        {
                            "string",
                        },
                    },
                },
            },
        },
        Comment = "string",
        Dimensions = new[]
        {
            new Snowflake.Inputs.SemanticViewDimensionArgs
            {
                QualifiedExpressionName = "string",
                SqlExpression = "string",
                Comment = "string",
                Synonyms = new[]
                {
                    "string",
                },
            },
        },
        Facts = new[]
        {
            new Snowflake.Inputs.SemanticViewFactArgs
            {
                QualifiedExpressionName = "string",
                SqlExpression = "string",
                Comment = "string",
                Synonyms = new[]
                {
                    "string",
                },
            },
        },
        Metrics = new[]
        {
            new Snowflake.Inputs.SemanticViewMetricArgs
            {
                SemanticExpression = new Snowflake.Inputs.SemanticViewMetricSemanticExpressionArgs
                {
                    QualifiedExpressionName = "string",
                    SqlExpression = "string",
                    Comment = "string",
                    Synonyms = new[]
                    {
                        "string",
                    },
                },
                WindowFunction = new Snowflake.Inputs.SemanticViewMetricWindowFunctionArgs
                {
                    OverClause = new Snowflake.Inputs.SemanticViewMetricWindowFunctionOverClauseArgs
                    {
                        OrderBy = "string",
                        PartitionBy = "string",
                        WindowFrameClause = "string",
                    },
                    QualifiedExpressionName = "string",
                    SqlExpression = "string",
                },
            },
        },
        Name = "string",
        Relationships = new[]
        {
            new Snowflake.Inputs.SemanticViewRelationshipArgs
            {
                ReferencedTableNameOrAlias = new Snowflake.Inputs.SemanticViewRelationshipReferencedTableNameOrAliasArgs
                {
                    TableAlias = "string",
                    TableName = "string",
                },
                RelationshipColumns = new[]
                {
                    "string",
                },
                TableNameOrAlias = new Snowflake.Inputs.SemanticViewRelationshipTableNameOrAliasArgs
                {
                    TableAlias = "string",
                    TableName = "string",
                },
                ReferencedRelationshipColumns = new[]
                {
                    "string",
                },
                RelationshipIdentifier = "string",
            },
        },
    });
    
    example, err := snowflake.NewSemanticView(ctx, "semanticViewResource", &snowflake.SemanticViewArgs{
    	Database: pulumi.String("string"),
    	Schema:   pulumi.String("string"),
    	Tables: snowflake.SemanticViewTableArray{
    		&snowflake.SemanticViewTableArgs{
    			TableAlias: pulumi.String("string"),
    			TableName:  pulumi.String("string"),
    			Comment:    pulumi.String("string"),
    			PrimaryKeys: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Synonyms: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Uniques: snowflake.SemanticViewTableUniqueArray{
    				&snowflake.SemanticViewTableUniqueArgs{
    					Values: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    			},
    		},
    	},
    	Comment: pulumi.String("string"),
    	Dimensions: snowflake.SemanticViewDimensionArray{
    		&snowflake.SemanticViewDimensionArgs{
    			QualifiedExpressionName: pulumi.String("string"),
    			SqlExpression:           pulumi.String("string"),
    			Comment:                 pulumi.String("string"),
    			Synonyms: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    	},
    	Facts: snowflake.SemanticViewFactArray{
    		&snowflake.SemanticViewFactArgs{
    			QualifiedExpressionName: pulumi.String("string"),
    			SqlExpression:           pulumi.String("string"),
    			Comment:                 pulumi.String("string"),
    			Synonyms: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    	},
    	Metrics: snowflake.SemanticViewMetricArray{
    		&snowflake.SemanticViewMetricArgs{
    			SemanticExpression: &snowflake.SemanticViewMetricSemanticExpressionArgs{
    				QualifiedExpressionName: pulumi.String("string"),
    				SqlExpression:           pulumi.String("string"),
    				Comment:                 pulumi.String("string"),
    				Synonyms: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    			WindowFunction: &snowflake.SemanticViewMetricWindowFunctionArgs{
    				OverClause: &snowflake.SemanticViewMetricWindowFunctionOverClauseArgs{
    					OrderBy:           pulumi.String("string"),
    					PartitionBy:       pulumi.String("string"),
    					WindowFrameClause: pulumi.String("string"),
    				},
    				QualifiedExpressionName: pulumi.String("string"),
    				SqlExpression:           pulumi.String("string"),
    			},
    		},
    	},
    	Name: pulumi.String("string"),
    	Relationships: snowflake.SemanticViewRelationshipArray{
    		&snowflake.SemanticViewRelationshipArgs{
    			ReferencedTableNameOrAlias: &snowflake.SemanticViewRelationshipReferencedTableNameOrAliasArgs{
    				TableAlias: pulumi.String("string"),
    				TableName:  pulumi.String("string"),
    			},
    			RelationshipColumns: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			TableNameOrAlias: &snowflake.SemanticViewRelationshipTableNameOrAliasArgs{
    				TableAlias: pulumi.String("string"),
    				TableName:  pulumi.String("string"),
    			},
    			ReferencedRelationshipColumns: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			RelationshipIdentifier: pulumi.String("string"),
    		},
    	},
    })
    
    var semanticViewResource = new SemanticView("semanticViewResource", SemanticViewArgs.builder()
        .database("string")
        .schema("string")
        .tables(SemanticViewTableArgs.builder()
            .tableAlias("string")
            .tableName("string")
            .comment("string")
            .primaryKeys("string")
            .synonyms("string")
            .uniques(SemanticViewTableUniqueArgs.builder()
                .values("string")
                .build())
            .build())
        .comment("string")
        .dimensions(SemanticViewDimensionArgs.builder()
            .qualifiedExpressionName("string")
            .sqlExpression("string")
            .comment("string")
            .synonyms("string")
            .build())
        .facts(SemanticViewFactArgs.builder()
            .qualifiedExpressionName("string")
            .sqlExpression("string")
            .comment("string")
            .synonyms("string")
            .build())
        .metrics(SemanticViewMetricArgs.builder()
            .semanticExpression(SemanticViewMetricSemanticExpressionArgs.builder()
                .qualifiedExpressionName("string")
                .sqlExpression("string")
                .comment("string")
                .synonyms("string")
                .build())
            .windowFunction(SemanticViewMetricWindowFunctionArgs.builder()
                .overClause(SemanticViewMetricWindowFunctionOverClauseArgs.builder()
                    .orderBy("string")
                    .partitionBy("string")
                    .windowFrameClause("string")
                    .build())
                .qualifiedExpressionName("string")
                .sqlExpression("string")
                .build())
            .build())
        .name("string")
        .relationships(SemanticViewRelationshipArgs.builder()
            .referencedTableNameOrAlias(SemanticViewRelationshipReferencedTableNameOrAliasArgs.builder()
                .tableAlias("string")
                .tableName("string")
                .build())
            .relationshipColumns("string")
            .tableNameOrAlias(SemanticViewRelationshipTableNameOrAliasArgs.builder()
                .tableAlias("string")
                .tableName("string")
                .build())
            .referencedRelationshipColumns("string")
            .relationshipIdentifier("string")
            .build())
        .build());
    
    semantic_view_resource = snowflake.SemanticView("semanticViewResource",
        database="string",
        schema="string",
        tables=[{
            "table_alias": "string",
            "table_name": "string",
            "comment": "string",
            "primary_keys": ["string"],
            "synonyms": ["string"],
            "uniques": [{
                "values": ["string"],
            }],
        }],
        comment="string",
        dimensions=[{
            "qualified_expression_name": "string",
            "sql_expression": "string",
            "comment": "string",
            "synonyms": ["string"],
        }],
        facts=[{
            "qualified_expression_name": "string",
            "sql_expression": "string",
            "comment": "string",
            "synonyms": ["string"],
        }],
        metrics=[{
            "semantic_expression": {
                "qualified_expression_name": "string",
                "sql_expression": "string",
                "comment": "string",
                "synonyms": ["string"],
            },
            "window_function": {
                "over_clause": {
                    "order_by": "string",
                    "partition_by": "string",
                    "window_frame_clause": "string",
                },
                "qualified_expression_name": "string",
                "sql_expression": "string",
            },
        }],
        name="string",
        relationships=[{
            "referenced_table_name_or_alias": {
                "table_alias": "string",
                "table_name": "string",
            },
            "relationship_columns": ["string"],
            "table_name_or_alias": {
                "table_alias": "string",
                "table_name": "string",
            },
            "referenced_relationship_columns": ["string"],
            "relationship_identifier": "string",
        }])
    
    const semanticViewResource = new snowflake.SemanticView("semanticViewResource", {
        database: "string",
        schema: "string",
        tables: [{
            tableAlias: "string",
            tableName: "string",
            comment: "string",
            primaryKeys: ["string"],
            synonyms: ["string"],
            uniques: [{
                values: ["string"],
            }],
        }],
        comment: "string",
        dimensions: [{
            qualifiedExpressionName: "string",
            sqlExpression: "string",
            comment: "string",
            synonyms: ["string"],
        }],
        facts: [{
            qualifiedExpressionName: "string",
            sqlExpression: "string",
            comment: "string",
            synonyms: ["string"],
        }],
        metrics: [{
            semanticExpression: {
                qualifiedExpressionName: "string",
                sqlExpression: "string",
                comment: "string",
                synonyms: ["string"],
            },
            windowFunction: {
                overClause: {
                    orderBy: "string",
                    partitionBy: "string",
                    windowFrameClause: "string",
                },
                qualifiedExpressionName: "string",
                sqlExpression: "string",
            },
        }],
        name: "string",
        relationships: [{
            referencedTableNameOrAlias: {
                tableAlias: "string",
                tableName: "string",
            },
            relationshipColumns: ["string"],
            tableNameOrAlias: {
                tableAlias: "string",
                tableName: "string",
            },
            referencedRelationshipColumns: ["string"],
            relationshipIdentifier: "string",
        }],
    });
    
    type: snowflake:SemanticView
    properties:
        comment: string
        database: string
        dimensions:
            - comment: string
              qualifiedExpressionName: string
              sqlExpression: string
              synonyms:
                - string
        facts:
            - comment: string
              qualifiedExpressionName: string
              sqlExpression: string
              synonyms:
                - string
        metrics:
            - semanticExpression:
                comment: string
                qualifiedExpressionName: string
                sqlExpression: string
                synonyms:
                    - string
              windowFunction:
                overClause:
                    orderBy: string
                    partitionBy: string
                    windowFrameClause: string
                qualifiedExpressionName: string
                sqlExpression: string
        name: string
        relationships:
            - referencedRelationshipColumns:
                - string
              referencedTableNameOrAlias:
                tableAlias: string
                tableName: string
              relationshipColumns:
                - string
              relationshipIdentifier: string
              tableNameOrAlias:
                tableAlias: string
                tableName: string
        schema: string
        tables:
            - comment: string
              primaryKeys:
                - string
              synonyms:
                - string
              tableAlias: string
              tableName: string
              uniques:
                - values:
                    - string
    

    SemanticView Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The SemanticView resource accepts the following input properties:

    Database string
    The database in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Schema string
    The schema in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Tables List<SemanticViewTable>
    The list of logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Comment string
    Specifies a comment for the semantic view.
    Dimensions List<SemanticViewDimension>
    The list of dimensions in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Facts List<SemanticViewFact>
    The list of facts in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Metrics List<SemanticViewMetric>
    Specify a list of metrics for the semantic view. Each metric can have either a semantic expression or a window function in its definition. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Name string
    Specifies the identifier for the semantic view; must be unique within the schema. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Relationships List<SemanticViewRelationship>
    The list of relationships between the logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Database string
    The database in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Schema string
    The schema in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Tables []SemanticViewTableArgs
    The list of logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Comment string
    Specifies a comment for the semantic view.
    Dimensions []SemanticViewDimensionArgs
    The list of dimensions in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Facts []SemanticViewFactArgs
    The list of facts in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Metrics []SemanticViewMetricArgs
    Specify a list of metrics for the semantic view. Each metric can have either a semantic expression or a window function in its definition. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Name string
    Specifies the identifier for the semantic view; must be unique within the schema. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Relationships []SemanticViewRelationshipArgs
    The list of relationships between the logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    database String
    The database in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    schema String
    The schema in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    tables List<SemanticViewTable>
    The list of logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment String
    Specifies a comment for the semantic view.
    dimensions List<SemanticViewDimension>
    The list of dimensions in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    facts List<SemanticViewFact>
    The list of facts in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    metrics List<SemanticViewMetric>
    Specify a list of metrics for the semantic view. Each metric can have either a semantic expression or a window function in its definition. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    name String
    Specifies the identifier for the semantic view; must be unique within the schema. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    relationships List<SemanticViewRelationship>
    The list of relationships between the logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    database string
    The database in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    schema string
    The schema in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    tables SemanticViewTable[]
    The list of logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment string
    Specifies a comment for the semantic view.
    dimensions SemanticViewDimension[]
    The list of dimensions in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    facts SemanticViewFact[]
    The list of facts in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    metrics SemanticViewMetric[]
    Specify a list of metrics for the semantic view. Each metric can have either a semantic expression or a window function in its definition. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    name string
    Specifies the identifier for the semantic view; must be unique within the schema. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    relationships SemanticViewRelationship[]
    The list of relationships between the logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    database str
    The database in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    schema str
    The schema in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    tables Sequence[SemanticViewTableArgs]
    The list of logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment str
    Specifies a comment for the semantic view.
    dimensions Sequence[SemanticViewDimensionArgs]
    The list of dimensions in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    facts Sequence[SemanticViewFactArgs]
    The list of facts in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    metrics Sequence[SemanticViewMetricArgs]
    Specify a list of metrics for the semantic view. Each metric can have either a semantic expression or a window function in its definition. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    name str
    Specifies the identifier for the semantic view; must be unique within the schema. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    relationships Sequence[SemanticViewRelationshipArgs]
    The list of relationships between the logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    database String
    The database in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    schema String
    The schema in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    tables List<Property Map>
    The list of logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment String
    Specifies a comment for the semantic view.
    dimensions List<Property Map>
    The list of dimensions in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    facts List<Property Map>
    The list of facts in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    metrics List<Property Map>
    Specify a list of metrics for the semantic view. Each metric can have either a semantic expression or a window function in its definition. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    name String
    Specifies the identifier for the semantic view; must be unique within the schema. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    relationships List<Property Map>
    The list of relationships between the logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".

    Outputs

    All input properties are implicitly available as output properties. Additionally, the SemanticView resource produces the following output properties:

    FullyQualifiedName string
    Fully qualified name of the resource. For more information, see object name resolution.
    Id string
    The provider-assigned unique ID for this managed resource.
    ShowOutputs List<SemanticViewShowOutput>
    Outputs the result of SHOW SEMANTIC VIEWS for the given semantic view.
    FullyQualifiedName string
    Fully qualified name of the resource. For more information, see object name resolution.
    Id string
    The provider-assigned unique ID for this managed resource.
    ShowOutputs []SemanticViewShowOutput
    Outputs the result of SHOW SEMANTIC VIEWS for the given semantic view.
    fullyQualifiedName String
    Fully qualified name of the resource. For more information, see object name resolution.
    id String
    The provider-assigned unique ID for this managed resource.
    showOutputs List<SemanticViewShowOutput>
    Outputs the result of SHOW SEMANTIC VIEWS for the given semantic view.
    fullyQualifiedName string
    Fully qualified name of the resource. For more information, see object name resolution.
    id string
    The provider-assigned unique ID for this managed resource.
    showOutputs SemanticViewShowOutput[]
    Outputs the result of SHOW SEMANTIC VIEWS for the given semantic view.
    fully_qualified_name str
    Fully qualified name of the resource. For more information, see object name resolution.
    id str
    The provider-assigned unique ID for this managed resource.
    show_outputs Sequence[SemanticViewShowOutput]
    Outputs the result of SHOW SEMANTIC VIEWS for the given semantic view.
    fullyQualifiedName String
    Fully qualified name of the resource. For more information, see object name resolution.
    id String
    The provider-assigned unique ID for this managed resource.
    showOutputs List<Property Map>
    Outputs the result of SHOW SEMANTIC VIEWS for the given semantic view.

    Look up Existing SemanticView Resource

    Get an existing SemanticView resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: SemanticViewState, opts?: CustomResourceOptions): SemanticView
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            comment: Optional[str] = None,
            database: Optional[str] = None,
            dimensions: Optional[Sequence[SemanticViewDimensionArgs]] = None,
            facts: Optional[Sequence[SemanticViewFactArgs]] = None,
            fully_qualified_name: Optional[str] = None,
            metrics: Optional[Sequence[SemanticViewMetricArgs]] = None,
            name: Optional[str] = None,
            relationships: Optional[Sequence[SemanticViewRelationshipArgs]] = None,
            schema: Optional[str] = None,
            show_outputs: Optional[Sequence[SemanticViewShowOutputArgs]] = None,
            tables: Optional[Sequence[SemanticViewTableArgs]] = None) -> SemanticView
    func GetSemanticView(ctx *Context, name string, id IDInput, state *SemanticViewState, opts ...ResourceOption) (*SemanticView, error)
    public static SemanticView Get(string name, Input<string> id, SemanticViewState? state, CustomResourceOptions? opts = null)
    public static SemanticView get(String name, Output<String> id, SemanticViewState state, CustomResourceOptions options)
    resources:  _:    type: snowflake:SemanticView    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Comment string
    Specifies a comment for the semantic view.
    Database string
    The database in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Dimensions List<SemanticViewDimension>
    The list of dimensions in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Facts List<SemanticViewFact>
    The list of facts in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    FullyQualifiedName string
    Fully qualified name of the resource. For more information, see object name resolution.
    Metrics List<SemanticViewMetric>
    Specify a list of metrics for the semantic view. Each metric can have either a semantic expression or a window function in its definition. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Name string
    Specifies the identifier for the semantic view; must be unique within the schema. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Relationships List<SemanticViewRelationship>
    The list of relationships between the logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Schema string
    The schema in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    ShowOutputs List<SemanticViewShowOutput>
    Outputs the result of SHOW SEMANTIC VIEWS for the given semantic view.
    Tables List<SemanticViewTable>
    The list of logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Comment string
    Specifies a comment for the semantic view.
    Database string
    The database in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Dimensions []SemanticViewDimensionArgs
    The list of dimensions in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Facts []SemanticViewFactArgs
    The list of facts in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    FullyQualifiedName string
    Fully qualified name of the resource. For more information, see object name resolution.
    Metrics []SemanticViewMetricArgs
    Specify a list of metrics for the semantic view. Each metric can have either a semantic expression or a window function in its definition. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Name string
    Specifies the identifier for the semantic view; must be unique within the schema. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Relationships []SemanticViewRelationshipArgs
    The list of relationships between the logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Schema string
    The schema in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    ShowOutputs []SemanticViewShowOutputArgs
    Outputs the result of SHOW SEMANTIC VIEWS for the given semantic view.
    Tables []SemanticViewTableArgs
    The list of logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment String
    Specifies a comment for the semantic view.
    database String
    The database in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    dimensions List<SemanticViewDimension>
    The list of dimensions in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    facts List<SemanticViewFact>
    The list of facts in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    fullyQualifiedName String
    Fully qualified name of the resource. For more information, see object name resolution.
    metrics List<SemanticViewMetric>
    Specify a list of metrics for the semantic view. Each metric can have either a semantic expression or a window function in its definition. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    name String
    Specifies the identifier for the semantic view; must be unique within the schema. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    relationships List<SemanticViewRelationship>
    The list of relationships between the logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    schema String
    The schema in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    showOutputs List<SemanticViewShowOutput>
    Outputs the result of SHOW SEMANTIC VIEWS for the given semantic view.
    tables List<SemanticViewTable>
    The list of logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment string
    Specifies a comment for the semantic view.
    database string
    The database in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    dimensions SemanticViewDimension[]
    The list of dimensions in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    facts SemanticViewFact[]
    The list of facts in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    fullyQualifiedName string
    Fully qualified name of the resource. For more information, see object name resolution.
    metrics SemanticViewMetric[]
    Specify a list of metrics for the semantic view. Each metric can have either a semantic expression or a window function in its definition. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    name string
    Specifies the identifier for the semantic view; must be unique within the schema. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    relationships SemanticViewRelationship[]
    The list of relationships between the logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    schema string
    The schema in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    showOutputs SemanticViewShowOutput[]
    Outputs the result of SHOW SEMANTIC VIEWS for the given semantic view.
    tables SemanticViewTable[]
    The list of logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment str
    Specifies a comment for the semantic view.
    database str
    The database in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    dimensions Sequence[SemanticViewDimensionArgs]
    The list of dimensions in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    facts Sequence[SemanticViewFactArgs]
    The list of facts in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    fully_qualified_name str
    Fully qualified name of the resource. For more information, see object name resolution.
    metrics Sequence[SemanticViewMetricArgs]
    Specify a list of metrics for the semantic view. Each metric can have either a semantic expression or a window function in its definition. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    name str
    Specifies the identifier for the semantic view; must be unique within the schema. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    relationships Sequence[SemanticViewRelationshipArgs]
    The list of relationships between the logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    schema str
    The schema in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    show_outputs Sequence[SemanticViewShowOutputArgs]
    Outputs the result of SHOW SEMANTIC VIEWS for the given semantic view.
    tables Sequence[SemanticViewTableArgs]
    The list of logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment String
    Specifies a comment for the semantic view.
    database String
    The database in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    dimensions List<Property Map>
    The list of dimensions in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    facts List<Property Map>
    The list of facts in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    fullyQualifiedName String
    Fully qualified name of the resource. For more information, see object name resolution.
    metrics List<Property Map>
    Specify a list of metrics for the semantic view. Each metric can have either a semantic expression or a window function in its definition. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    name String
    Specifies the identifier for the semantic view; must be unique within the schema. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    relationships List<Property Map>
    The list of relationships between the logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    schema String
    The schema in which to create the semantic view. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    showOutputs List<Property Map>
    Outputs the result of SHOW SEMANTIC VIEWS for the given semantic view.
    tables List<Property Map>
    The list of logical tables in the semantic view. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".

    Supporting Types

    SemanticViewDimension, SemanticViewDimensionArgs

    QualifiedExpressionName string
    Specifies a qualified name for the dimension, including the table name and a unique identifier for the dimension: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"".
    SqlExpression string
    The SQL expression used to compute the dimension.
    Comment string
    Specifies a comment for the dimension.
    Synonyms List<string>
    List of synonyms for the dimension.
    QualifiedExpressionName string
    Specifies a qualified name for the dimension, including the table name and a unique identifier for the dimension: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"".
    SqlExpression string
    The SQL expression used to compute the dimension.
    Comment string
    Specifies a comment for the dimension.
    Synonyms []string
    List of synonyms for the dimension.
    qualifiedExpressionName String
    Specifies a qualified name for the dimension, including the table name and a unique identifier for the dimension: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"".
    sqlExpression String
    The SQL expression used to compute the dimension.
    comment String
    Specifies a comment for the dimension.
    synonyms List<String>
    List of synonyms for the dimension.
    qualifiedExpressionName string
    Specifies a qualified name for the dimension, including the table name and a unique identifier for the dimension: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"".
    sqlExpression string
    The SQL expression used to compute the dimension.
    comment string
    Specifies a comment for the dimension.
    synonyms string[]
    List of synonyms for the dimension.
    qualified_expression_name str
    Specifies a qualified name for the dimension, including the table name and a unique identifier for the dimension: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"".
    sql_expression str
    The SQL expression used to compute the dimension.
    comment str
    Specifies a comment for the dimension.
    synonyms Sequence[str]
    List of synonyms for the dimension.
    qualifiedExpressionName String
    Specifies a qualified name for the dimension, including the table name and a unique identifier for the dimension: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"".
    sqlExpression String
    The SQL expression used to compute the dimension.
    comment String
    Specifies a comment for the dimension.
    synonyms List<String>
    List of synonyms for the dimension.

    SemanticViewFact, SemanticViewFactArgs

    QualifiedExpressionName string
    Specifies a qualified name for the fact, including the table name and a unique identifier for the fact: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"".
    SqlExpression string
    The SQL expression used to compute the fact.
    Comment string
    Specifies a comment for the fact.
    Synonyms List<string>
    List of synonyms for the fact.
    QualifiedExpressionName string
    Specifies a qualified name for the fact, including the table name and a unique identifier for the fact: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"".
    SqlExpression string
    The SQL expression used to compute the fact.
    Comment string
    Specifies a comment for the fact.
    Synonyms []string
    List of synonyms for the fact.
    qualifiedExpressionName String
    Specifies a qualified name for the fact, including the table name and a unique identifier for the fact: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"".
    sqlExpression String
    The SQL expression used to compute the fact.
    comment String
    Specifies a comment for the fact.
    synonyms List<String>
    List of synonyms for the fact.
    qualifiedExpressionName string
    Specifies a qualified name for the fact, including the table name and a unique identifier for the fact: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"".
    sqlExpression string
    The SQL expression used to compute the fact.
    comment string
    Specifies a comment for the fact.
    synonyms string[]
    List of synonyms for the fact.
    qualified_expression_name str
    Specifies a qualified name for the fact, including the table name and a unique identifier for the fact: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"".
    sql_expression str
    The SQL expression used to compute the fact.
    comment str
    Specifies a comment for the fact.
    synonyms Sequence[str]
    List of synonyms for the fact.
    qualifiedExpressionName String
    Specifies a qualified name for the fact, including the table name and a unique identifier for the fact: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"".
    sqlExpression String
    The SQL expression used to compute the fact.
    comment String
    Specifies a comment for the fact.
    synonyms List<String>
    List of synonyms for the fact.

    SemanticViewMetric, SemanticViewMetricArgs

    SemanticExpression SemanticViewMetricSemanticExpression
    Specifies a semantic expression for a metric definition. Cannot be used in combination with a window function.
    WindowFunction SemanticViewMetricWindowFunction
    Specifies a window function for a metric definition. Cannot be used in combination with a semantic expression.
    SemanticExpression SemanticViewMetricSemanticExpression
    Specifies a semantic expression for a metric definition. Cannot be used in combination with a window function.
    WindowFunction SemanticViewMetricWindowFunction
    Specifies a window function for a metric definition. Cannot be used in combination with a semantic expression.
    semanticExpression SemanticViewMetricSemanticExpression
    Specifies a semantic expression for a metric definition. Cannot be used in combination with a window function.
    windowFunction SemanticViewMetricWindowFunction
    Specifies a window function for a metric definition. Cannot be used in combination with a semantic expression.
    semanticExpression SemanticViewMetricSemanticExpression
    Specifies a semantic expression for a metric definition. Cannot be used in combination with a window function.
    windowFunction SemanticViewMetricWindowFunction
    Specifies a window function for a metric definition. Cannot be used in combination with a semantic expression.
    semantic_expression SemanticViewMetricSemanticExpression
    Specifies a semantic expression for a metric definition. Cannot be used in combination with a window function.
    window_function SemanticViewMetricWindowFunction
    Specifies a window function for a metric definition. Cannot be used in combination with a semantic expression.
    semanticExpression Property Map
    Specifies a semantic expression for a metric definition. Cannot be used in combination with a window function.
    windowFunction Property Map
    Specifies a window function for a metric definition. Cannot be used in combination with a semantic expression.

    SemanticViewMetricSemanticExpression, SemanticViewMetricSemanticExpressionArgs

    QualifiedExpressionName string
    Specifies a qualified name for the metric: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"". For the derived metric omit the <table_alias>. part but still wrap in double quotes, e.g. "\"<semantic_expression_name>\"".
    SqlExpression string
    The SQL expression used to compute the metric.
    Comment string
    Specifies a comment for the semantic expression.
    Synonyms List<string>
    List of synonyms for this semantic expression.
    QualifiedExpressionName string
    Specifies a qualified name for the metric: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"". For the derived metric omit the <table_alias>. part but still wrap in double quotes, e.g. "\"<semantic_expression_name>\"".
    SqlExpression string
    The SQL expression used to compute the metric.
    Comment string
    Specifies a comment for the semantic expression.
    Synonyms []string
    List of synonyms for this semantic expression.
    qualifiedExpressionName String
    Specifies a qualified name for the metric: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"". For the derived metric omit the <table_alias>. part but still wrap in double quotes, e.g. "\"<semantic_expression_name>\"".
    sqlExpression String
    The SQL expression used to compute the metric.
    comment String
    Specifies a comment for the semantic expression.
    synonyms List<String>
    List of synonyms for this semantic expression.
    qualifiedExpressionName string
    Specifies a qualified name for the metric: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"". For the derived metric omit the <table_alias>. part but still wrap in double quotes, e.g. "\"<semantic_expression_name>\"".
    sqlExpression string
    The SQL expression used to compute the metric.
    comment string
    Specifies a comment for the semantic expression.
    synonyms string[]
    List of synonyms for this semantic expression.
    qualified_expression_name str
    Specifies a qualified name for the metric: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"". For the derived metric omit the <table_alias>. part but still wrap in double quotes, e.g. "\"<semantic_expression_name>\"".
    sql_expression str
    The SQL expression used to compute the metric.
    comment str
    Specifies a comment for the semantic expression.
    synonyms Sequence[str]
    List of synonyms for this semantic expression.
    qualifiedExpressionName String
    Specifies a qualified name for the metric: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"". For the derived metric omit the <table_alias>. part but still wrap in double quotes, e.g. "\"<semantic_expression_name>\"".
    sqlExpression String
    The SQL expression used to compute the metric.
    comment String
    Specifies a comment for the semantic expression.
    synonyms List<String>
    List of synonyms for this semantic expression.

    SemanticViewMetricWindowFunction, SemanticViewMetricWindowFunctionArgs

    OverClause SemanticViewMetricWindowFunctionOverClause
    Specify the partition by, order by or frame over which the window function is to be computed.
    QualifiedExpressionName string
    Specifies a qualified name for the metric: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"". For the derived metric omit the <table_alias>. part but still wrap in double quotes, e.g. "\"<semantic_expression_name>\"".
    SqlExpression string
    The SQL expression used to compute the metric following the <window_function>(<metric>) format.
    OverClause SemanticViewMetricWindowFunctionOverClause
    Specify the partition by, order by or frame over which the window function is to be computed.
    QualifiedExpressionName string
    Specifies a qualified name for the metric: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"". For the derived metric omit the <table_alias>. part but still wrap in double quotes, e.g. "\"<semantic_expression_name>\"".
    SqlExpression string
    The SQL expression used to compute the metric following the <window_function>(<metric>) format.
    overClause SemanticViewMetricWindowFunctionOverClause
    Specify the partition by, order by or frame over which the window function is to be computed.
    qualifiedExpressionName String
    Specifies a qualified name for the metric: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"". For the derived metric omit the <table_alias>. part but still wrap in double quotes, e.g. "\"<semantic_expression_name>\"".
    sqlExpression String
    The SQL expression used to compute the metric following the <window_function>(<metric>) format.
    overClause SemanticViewMetricWindowFunctionOverClause
    Specify the partition by, order by or frame over which the window function is to be computed.
    qualifiedExpressionName string
    Specifies a qualified name for the metric: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"". For the derived metric omit the <table_alias>. part but still wrap in double quotes, e.g. "\"<semantic_expression_name>\"".
    sqlExpression string
    The SQL expression used to compute the metric following the <window_function>(<metric>) format.
    over_clause SemanticViewMetricWindowFunctionOverClause
    Specify the partition by, order by or frame over which the window function is to be computed.
    qualified_expression_name str
    Specifies a qualified name for the metric: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"". For the derived metric omit the <table_alias>. part but still wrap in double quotes, e.g. "\"<semantic_expression_name>\"".
    sql_expression str
    The SQL expression used to compute the metric following the <window_function>(<metric>) format.
    overClause Property Map
    Specify the partition by, order by or frame over which the window function is to be computed.
    qualifiedExpressionName String
    Specifies a qualified name for the metric: <table_alias>.<semantic_expression_name>. Remember to wrap each part in double quotes like "\"<table_alias>\".\"<semantic_expression_name>\"". For the derived metric omit the <table_alias>. part but still wrap in double quotes, e.g. "\"<semantic_expression_name>\"".
    sqlExpression String
    The SQL expression used to compute the metric following the <window_function>(<metric>) format.

    SemanticViewMetricWindowFunctionOverClause, SemanticViewMetricWindowFunctionOverClauseArgs

    OrderBy string
    Specifies an order by clause. It must be a complete SQL expression, including any [ ASC | DESC ] [ NULLS { FIRST | LAST } ] modifiers.
    PartitionBy string
    Specifies a partition by clause.
    WindowFrameClause string
    Specifies a window frame clause.
    OrderBy string
    Specifies an order by clause. It must be a complete SQL expression, including any [ ASC | DESC ] [ NULLS { FIRST | LAST } ] modifiers.
    PartitionBy string
    Specifies a partition by clause.
    WindowFrameClause string
    Specifies a window frame clause.
    orderBy String
    Specifies an order by clause. It must be a complete SQL expression, including any [ ASC | DESC ] [ NULLS { FIRST | LAST } ] modifiers.
    partitionBy String
    Specifies a partition by clause.
    windowFrameClause String
    Specifies a window frame clause.
    orderBy string
    Specifies an order by clause. It must be a complete SQL expression, including any [ ASC | DESC ] [ NULLS { FIRST | LAST } ] modifiers.
    partitionBy string
    Specifies a partition by clause.
    windowFrameClause string
    Specifies a window frame clause.
    order_by str
    Specifies an order by clause. It must be a complete SQL expression, including any [ ASC | DESC ] [ NULLS { FIRST | LAST } ] modifiers.
    partition_by str
    Specifies a partition by clause.
    window_frame_clause str
    Specifies a window frame clause.
    orderBy String
    Specifies an order by clause. It must be a complete SQL expression, including any [ ASC | DESC ] [ NULLS { FIRST | LAST } ] modifiers.
    partitionBy String
    Specifies a partition by clause.
    windowFrameClause String
    Specifies a window frame clause.

    SemanticViewRelationship, SemanticViewRelationshipArgs

    ReferencedTableNameOrAlias SemanticViewRelationshipReferencedTableNameOrAlias
    Specifies the other logical table and one or more of its columns that are referred to by the first logical table. Each referenced table can have either a table_name or a table_alias, not both.
    RelationshipColumns List<string>
    Specifies one or more columns in the first logical table that refers to columns in another logical table. Column names in this list are case-sensitive - the provider uses double quotes to wrap each of them when sending the SQL to Snowflake.
    TableNameOrAlias SemanticViewRelationshipTableNameOrAlias
    Specifies one of the logical tables that refers to columns in another logical table. Each table can have either a table_name or a table_alias, not both.
    ReferencedRelationshipColumns List<string>
    Specifies one or more columns in the second logical table that are referred to by the first logical table. Column names in this list are case-sensitive - the provider uses double quotes to wrap each of them when sending the SQL to Snowflake.
    RelationshipIdentifier string
    Specifies an optional identifier for the relationship. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    ReferencedTableNameOrAlias SemanticViewRelationshipReferencedTableNameOrAlias
    Specifies the other logical table and one or more of its columns that are referred to by the first logical table. Each referenced table can have either a table_name or a table_alias, not both.
    RelationshipColumns []string
    Specifies one or more columns in the first logical table that refers to columns in another logical table. Column names in this list are case-sensitive - the provider uses double quotes to wrap each of them when sending the SQL to Snowflake.
    TableNameOrAlias SemanticViewRelationshipTableNameOrAlias
    Specifies one of the logical tables that refers to columns in another logical table. Each table can have either a table_name or a table_alias, not both.
    ReferencedRelationshipColumns []string
    Specifies one or more columns in the second logical table that are referred to by the first logical table. Column names in this list are case-sensitive - the provider uses double quotes to wrap each of them when sending the SQL to Snowflake.
    RelationshipIdentifier string
    Specifies an optional identifier for the relationship. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    referencedTableNameOrAlias SemanticViewRelationshipReferencedTableNameOrAlias
    Specifies the other logical table and one or more of its columns that are referred to by the first logical table. Each referenced table can have either a table_name or a table_alias, not both.
    relationshipColumns List<String>
    Specifies one or more columns in the first logical table that refers to columns in another logical table. Column names in this list are case-sensitive - the provider uses double quotes to wrap each of them when sending the SQL to Snowflake.
    tableNameOrAlias SemanticViewRelationshipTableNameOrAlias
    Specifies one of the logical tables that refers to columns in another logical table. Each table can have either a table_name or a table_alias, not both.
    referencedRelationshipColumns List<String>
    Specifies one or more columns in the second logical table that are referred to by the first logical table. Column names in this list are case-sensitive - the provider uses double quotes to wrap each of them when sending the SQL to Snowflake.
    relationshipIdentifier String
    Specifies an optional identifier for the relationship. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    referencedTableNameOrAlias SemanticViewRelationshipReferencedTableNameOrAlias
    Specifies the other logical table and one or more of its columns that are referred to by the first logical table. Each referenced table can have either a table_name or a table_alias, not both.
    relationshipColumns string[]
    Specifies one or more columns in the first logical table that refers to columns in another logical table. Column names in this list are case-sensitive - the provider uses double quotes to wrap each of them when sending the SQL to Snowflake.
    tableNameOrAlias SemanticViewRelationshipTableNameOrAlias
    Specifies one of the logical tables that refers to columns in another logical table. Each table can have either a table_name or a table_alias, not both.
    referencedRelationshipColumns string[]
    Specifies one or more columns in the second logical table that are referred to by the first logical table. Column names in this list are case-sensitive - the provider uses double quotes to wrap each of them when sending the SQL to Snowflake.
    relationshipIdentifier string
    Specifies an optional identifier for the relationship. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    referenced_table_name_or_alias SemanticViewRelationshipReferencedTableNameOrAlias
    Specifies the other logical table and one or more of its columns that are referred to by the first logical table. Each referenced table can have either a table_name or a table_alias, not both.
    relationship_columns Sequence[str]
    Specifies one or more columns in the first logical table that refers to columns in another logical table. Column names in this list are case-sensitive - the provider uses double quotes to wrap each of them when sending the SQL to Snowflake.
    table_name_or_alias SemanticViewRelationshipTableNameOrAlias
    Specifies one of the logical tables that refers to columns in another logical table. Each table can have either a table_name or a table_alias, not both.
    referenced_relationship_columns Sequence[str]
    Specifies one or more columns in the second logical table that are referred to by the first logical table. Column names in this list are case-sensitive - the provider uses double quotes to wrap each of them when sending the SQL to Snowflake.
    relationship_identifier str
    Specifies an optional identifier for the relationship. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    referencedTableNameOrAlias Property Map
    Specifies the other logical table and one or more of its columns that are referred to by the first logical table. Each referenced table can have either a table_name or a table_alias, not both.
    relationshipColumns List<String>
    Specifies one or more columns in the first logical table that refers to columns in another logical table. Column names in this list are case-sensitive - the provider uses double quotes to wrap each of them when sending the SQL to Snowflake.
    tableNameOrAlias Property Map
    Specifies one of the logical tables that refers to columns in another logical table. Each table can have either a table_name or a table_alias, not both.
    referencedRelationshipColumns List<String>
    Specifies one or more columns in the second logical table that are referred to by the first logical table. Column names in this list are case-sensitive - the provider uses double quotes to wrap each of them when sending the SQL to Snowflake.
    relationshipIdentifier String
    Specifies an optional identifier for the relationship. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.

    SemanticViewRelationshipReferencedTableNameOrAlias, SemanticViewRelationshipReferencedTableNameOrAliasArgs

    TableAlias string
    The alias used for the logical table, cannot be used in combination with the table_name. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    TableName string
    The name of the logical table, cannot be used in combination with the table_alias. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    TableAlias string
    The alias used for the logical table, cannot be used in combination with the table_name. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    TableName string
    The name of the logical table, cannot be used in combination with the table_alias. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableAlias String
    The alias used for the logical table, cannot be used in combination with the table_name. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableName String
    The name of the logical table, cannot be used in combination with the table_alias. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableAlias string
    The alias used for the logical table, cannot be used in combination with the table_name. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableName string
    The name of the logical table, cannot be used in combination with the table_alias. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    table_alias str
    The alias used for the logical table, cannot be used in combination with the table_name. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    table_name str
    The name of the logical table, cannot be used in combination with the table_alias. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableAlias String
    The alias used for the logical table, cannot be used in combination with the table_name. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableName String
    The name of the logical table, cannot be used in combination with the table_alias. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.

    SemanticViewRelationshipTableNameOrAlias, SemanticViewRelationshipTableNameOrAliasArgs

    TableAlias string
    The alias used for the logical table, cannot be used in combination with the table_name. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    TableName string
    The name of the logical table, cannot be used in combination with the table_alias. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    TableAlias string
    The alias used for the logical table, cannot be used in combination with the table_name. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    TableName string
    The name of the logical table, cannot be used in combination with the table_alias. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableAlias String
    The alias used for the logical table, cannot be used in combination with the table_name. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableName String
    The name of the logical table, cannot be used in combination with the table_alias. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableAlias string
    The alias used for the logical table, cannot be used in combination with the table_name. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableName string
    The name of the logical table, cannot be used in combination with the table_alias. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    table_alias str
    The alias used for the logical table, cannot be used in combination with the table_name. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    table_name str
    The name of the logical table, cannot be used in combination with the table_alias. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableAlias String
    The alias used for the logical table, cannot be used in combination with the table_name. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableName String
    The name of the logical table, cannot be used in combination with the table_alias. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.

    SemanticViewShowOutput, SemanticViewShowOutputArgs

    Comment string
    CreatedOn string
    DatabaseName string
    Extension string
    Name string
    Owner string
    OwnerRoleType string
    SchemaName string
    Comment string
    CreatedOn string
    DatabaseName string
    Extension string
    Name string
    Owner string
    OwnerRoleType string
    SchemaName string
    comment String
    createdOn String
    databaseName String
    extension String
    name String
    owner String
    ownerRoleType String
    schemaName String
    comment string
    createdOn string
    databaseName string
    extension string
    name string
    owner string
    ownerRoleType string
    schemaName string
    comment String
    createdOn String
    databaseName String
    extension String
    name String
    owner String
    ownerRoleType String
    schemaName String

    SemanticViewTable, SemanticViewTableArgs

    TableAlias string
    Specifies an alias for a logical table in the semantic view. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    TableName string
    Specifies an identifier for the logical table. Example: "\"<db_name>\".\"<schema_name>\".\"<table_name>\"". Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Comment string
    Specifies a comment for the logical table.
    PrimaryKeys List<string>
    Definitions of primary keys in the logical table. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    Synonyms List<string>
    List of synonyms for the logical table.
    Uniques List<SemanticViewTableUnique>
    Definitions of unique key combinations in the logical table. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    TableAlias string
    Specifies an alias for a logical table in the semantic view. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    TableName string
    Specifies an identifier for the logical table. Example: "\"<db_name>\".\"<schema_name>\".\"<table_name>\"". Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Comment string
    Specifies a comment for the logical table.
    PrimaryKeys []string
    Definitions of primary keys in the logical table. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    Synonyms []string
    List of synonyms for the logical table.
    Uniques []SemanticViewTableUnique
    Definitions of unique key combinations in the logical table. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableAlias String
    Specifies an alias for a logical table in the semantic view. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableName String
    Specifies an identifier for the logical table. Example: "\"<db_name>\".\"<schema_name>\".\"<table_name>\"". Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    comment String
    Specifies a comment for the logical table.
    primaryKeys List<String>
    Definitions of primary keys in the logical table. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    synonyms List<String>
    List of synonyms for the logical table.
    uniques List<SemanticViewTableUnique>
    Definitions of unique key combinations in the logical table. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableAlias string
    Specifies an alias for a logical table in the semantic view. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableName string
    Specifies an identifier for the logical table. Example: "\"<db_name>\".\"<schema_name>\".\"<table_name>\"". Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    comment string
    Specifies a comment for the logical table.
    primaryKeys string[]
    Definitions of primary keys in the logical table. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    synonyms string[]
    List of synonyms for the logical table.
    uniques SemanticViewTableUnique[]
    Definitions of unique key combinations in the logical table. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    table_alias str
    Specifies an alias for a logical table in the semantic view. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    table_name str
    Specifies an identifier for the logical table. Example: "\"<db_name>\".\"<schema_name>\".\"<table_name>\"". Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    comment str
    Specifies a comment for the logical table.
    primary_keys Sequence[str]
    Definitions of primary keys in the logical table. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    synonyms Sequence[str]
    List of synonyms for the logical table.
    uniques Sequence[SemanticViewTableUnique]
    Definitions of unique key combinations in the logical table. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableAlias String
    Specifies an alias for a logical table in the semantic view. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    tableName String
    Specifies an identifier for the logical table. Example: "\"<db_name>\".\"<schema_name>\".\"<table_name>\"". Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    comment String
    Specifies a comment for the logical table.
    primaryKeys List<String>
    Definitions of primary keys in the logical table. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.
    synonyms List<String>
    List of synonyms for the logical table.
    uniques List<Property Map>
    Definitions of unique key combinations in the logical table. This field is case-sensitive - the provider uses double quotes to wrap it when sending the SQL to Snowflake.

    SemanticViewTableUnique, SemanticViewTableUniqueArgs

    Values List<string>
    Unique key combinations in the logical table.
    Values []string
    Unique key combinations in the logical table.
    values List<String>
    Unique key combinations in the logical table.
    values string[]
    Unique key combinations in the logical table.
    values Sequence[str]
    Unique key combinations in the logical table.
    values List<String>
    Unique key combinations in the logical table.

    Import

    $ pulumi import snowflake:index/semanticView:SemanticView example '"<db_name>"."<schema_name>"."<semantic_view_name>"'
    

    Note: Because the external changes for dimensions, facts, metrics, relationships, and tables are not currently handled, then import won’t populate these fields too.

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Snowflake pulumi/pulumi-snowflake
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the snowflake Terraform Provider.
    snowflake logo
    Snowflake v2.12.0 published on Friday, Feb 13, 2026 by Pulumi
      Meet Neo: Your AI Platform Teammate