私は次のようなテーブルを持っています
id name
10 bob
20 bill
ダブルクォーテーションで囲んだ出力で名前列だけを選択したい
それは私に正しい出力を与えているようselect '"'||name||'"' from table
ですが、連結を使用せずに他の方法はありますか...
ありがとうございました..
これを使用すると、二重引用符で結果を得ることができます
' " ' + 列名 + ' " '
例
SELECT '"'+Name+'"' , Age
FROM customer
"ビランジャ" | 27
引用符を追加する仮想列を作成します。
CREATE TABLE
....
quoted_name VARCHAR2 GENERATED ALWAYS AS ('"' || name || '"') VIRTUAL,
...
詳細については、こちらを参照してください。
http://www.oracle-base.com/articles/11g/virtual-columns-11gr1.php
これにより、少なくとも1つの二重引用符が含まれる名前がチェックされます
select * from table
where name like '%"%'
私の意見では、SQL で二重引用符を使用するシナリオが 2 つあります。
「上位 200 行の編集」で編集できない列のブログ コンテンツの更新
したがって、二重引用符を使用する場合は、これに従います。
SET QUOTED_IDENTIFIER OFF
BEGIN
DECLARE @YourSqlStmt AS VarChar(5000) -- 変数を宣言します。
SET @YourSqlStmt = "ok"
PRINT @YourSqlStmt -- ここで操作を行います
END
これにより時間が節約され、列の既存の文字列コンテンツで一重引用符をエスケープする必要がなくなります。
結果をスペースまたはカンマ区切りのテキスト ファイルに「エクスポート」できるようにする場合は、ビューを使用してデータを「フォーマット」します。日付列にもこれが必要です。