/ /CachéSQL:文字列セグメントを個別の列として選択しますか? -SQL、解析、区切りテキスト、システム間キャッシュ

CachéSQL:文字列セグメントを別々の列として選択しますか? - sql、解析、区切りテキスト、システム間キャッシュ

与えられた このドキュメント、結果の個々の列に以下のデータを返すにはどうすればよいですか?

| id | text                         |
-------------------------------------
| 01 | apple,green,ford,steve       |
| 02 | orange,blue,chevy,paul       |
| 03 | banana,purple,nissan,james   |

結果は次のようになります:

| fruit  | color  | car    | name  |
--------------------------------
| apple  | green  | ford   | steve |
| orange | blue   | chevy  | paul  |
| banana | purple | nissan | james |

変数はオプションではないと思います(リンクされたドキュメントにはSETコマンドはありません)。私の最終的な目標は、次のようなことをすることです SELECT DISTINCT car FROM (<parse statement here>) だから私はすべての車をリストするか、 SELECT name FROM (<parse statement here>) WHERE fruit = "apple" 特定の果物を持つすべての名前を検索します。

回答:

回答№1は2

これはキャッシュで動作するはずです:

select * from (
select $PIECE(text,",",1) fruit,
$PIECE(text,",",2) color,
$PIECE(text,",",3) car,
$PIECE(text,",",4) name
from mytable)
where fruit = "apple";