What's the difference between DECLARE TABLE and CREATE TABLE?

13,096

Solution 1

The only difference between DECLARE TABLE and CREATE TABLE is:

  • DECLARE TABLE: You will create a table on the fly and use that table later on in the query and not store it physically.

  • CREATE TABLE: You will create a table physically inside the database.

Solution 2

The difference is that "Declare table" would be a table level variable.

The "create table" will create a table in the database.

Share:
13,096
Cherry Wu
Author by

Cherry Wu

https://github.com/hanhanwu

Updated on July 24, 2022

Comments

  • Cherry Wu
    Cherry Wu almost 2 years

    I need to translate given T-SQL statements into another language. These T-SQL statements are using DECLARE TABLE. What's the difference between DECLARE TABLE and CREATE TABLE?

    For example, what’s the difference between the following two lines?

    declare @t table (account_id varchar(512), num_events int);
    
    Create table t {account_id varchar(512), num_events int}