web-dev-qa-db-ja.com

ビューからテーブルを作成

SQL Enterprise Managerでテーブルを作成するビューがありますが、このクエリを実行すると常にエラーが発生します。

CREATE TABLE A 
AS
(SELECT top 10 FROM dbo.myView)

これまでのエラーは、「 'as'の構文エラー」です。

ビューが大きすぎます。トップ10を使用することは可能ですか?

43
tdjfdjdj

SQL ServerCREATE TABLE AS SELECTをサポートしていません。

これを使って:

SELECT  *
INTO    A
FROM    myview

または

SELECT  TOP 10
        *
INTO    A
FROM    myview
ORDER BY
        id
85
Quassnoi

スキーマをスナッグして空のテーブルを作成するだけの場合は、次のように偽の述語を使用します。

SELECT * INTO myNewTable FROM myView WHERE 1=2
38
Pittsburgh DBA

SQL SERVERでは、次のようにします。

SELECT *
INTO A
FROM dbo.myView

これにより、ビューの内容を含む新しいテーブルAが作成されます。
詳細については、 here を参照してください。

9
Daniel Hilgarth

オンザフライでテーブルを作成するには、次の構文を使用します。

SELECT *
INTO A
FROM dbo.myView
4
Keith

新しいAを作成する場合は、INTOを使用できます。

select * into A from dbo.myView
3
Alex K.
SELECT * INTO [table_a] FROM dbo.myView
2
mikey

Oracleによく似ていますが、SQL Serverでは機能しません。

代わりに、次の構文を採用できます...

SELECT
  *
INTO
  new_table
FROM
  old_source(s)
2
MatBailie
Select 
    MonthEndDate MED,  
    SUM(GrossBalance/1000000) GrossBalance,
    PortfolioRename PR 
into 
    testDynamic 
from 
    Risk_PortfolioOverview  
    Group By MonthEndDate, PortfolioRename
0
javal