Reputation: 4074
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}
Upvotes: 11
Views: 20528
Reputation: 1185
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.
Upvotes: 19
Reputation: 598
The difference is that "Declare table" would be a table level variable.
The "create table" will create a table in the database.
Upvotes: 5