ホームページ >データベース >mysql チュートリアル >序数を使用して SQL Server 列を選択できますか?

序数を使用して SQL Server 列を選択できますか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-29 14:14:11418ブラウズ

Can You Select SQL Server Columns Using Ordinal Position?

列の序数位置を使用した SQL Server データの選択

列の選択に序数を使用することは一般的に推奨されませんが、1 回限りのシナリオなど、特定のシナリオでは必要になる場合があります。データインポートプロセス。 SQL Server で序数位置を使用して列データを選択することは可能ですか?

提供された例を詳しく説明するには、次のテーブルを考慮してください:

create table Test(
    Col1 int,
    Col2 nvarchar(10)
)

を使用する代わりに:

select Col2 from Test

次を使用して同じ結果を達成できますか?

select "2" from Test -- for illustration purposes only

答えは次のとおりです。 いいえ.

SQL Server では、順序位置に基づいて列を選択することはできません。代わりに、列名を明示的に指定する必要があります。したがって、提供されている 2 番目の例は有効な構文ではありません。

列の数はわかっているが、その名前やデータ型がわかっていない場合は、次の回避策を採用できます。

select NULL as C1, NULL as C2 where 1 = 0 
-- Returns empty table with predefined column names
union all
select * from Test 
-- There should be exactly 2 columns, but names and data type doesn't matter

このメソッドは必要な数の列を持つ一時テーブル。これにより、序数位置をインデックスとして使用してデータにアクセスできるようになります。ただし、多数の列があるテーブルには推奨されません。

以上が序数を使用して SQL Server 列を選択できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。