

# セルマジックを使用する
<a name="notebooks-spark-magics-cell-magics"></a>

数行にまたがって書かれたマジックでは、その前に二重パーセント記号 (`%%`) が付き、セルマジック関数またはセルマジックと呼ばれます。

## %%sql
<a name="notebooks-spark-magics-sql"></a>

このセルマジックを使用することで、Spark SQL ステートメントで修飾する必要なく、直接 SQL ステートメントを実行することができます。また、このコマンドは、返されたデータフレームで `.show()` を黙示的に呼び出すことで出力も表示します。

![\[%%sql の使用。\]](http://docs.aws.amazon.com/ja_jp/athena/latest/ug/images/notebooks-spark-magics-1.png)


この `%%sql` コマンドは、自動的に列出力を 20 文字で切り捨てます。現在、この設定は構成されていません。この制限を回避するには、次の完全な構文を使用し、それに応じて `show` メソッドのパラメーターを変更してください。

```
spark.sql("""YOUR_SQL""").show(n=number, truncate=number, vertical=bool)
```
+ **n** `int` (オプション)。出力する行数。
+ **truncate** — `bool` または`int` (オプション) — `true` の場合、20  文字を超える文字列を切り捨てます。1 より大きい数値を設定すると、長い文字列を指定した長さに切り詰め、セルを右詰めにします。
+ **vertical** — `bool` (オプション)。`true` の場合、出力の行が縦方向に (列値ごとに 1 行) 表示されます。