0

ピボットなしで mysql クエリの行を列に変換する方法。次のようなテーブルスキーマがあります

***********************
ID   SchoolName

1     JV

2     SDH
***********************

これを次のように転置したかった

**1 JV 2 SDH**

ピボットを試しましたが、代替手段を見つける必要があります。助けてください。

4

3 に答える 3

0

最後のコメントに基づいても、何を達成しようとしているのかはまだ不明であり、実際には探している正確な答えを得ることができません.

国テーブルを転置して単一の行として表示する必要がある場合は、動的 SQL を使用してそれを行うことができます。

SET @sql = NULL;

SELECT GROUP_CONCAT(CONCAT(id, '`', country_name, '`'))
  INTO @sql
  FROM countries;

SET @sql = CONCAT('SELECT ', @sql);

PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;

出力:

| | インド | インド | アメリカ合衆国 | ブラジル |
------------------------
| | 1 | 2 | 3 |

これがSQLFiddleのデモです

于 2013-08-25T01:56:22.990 に答える
0
SELECT GROUP_CONCAT(CONCAT(ID, ' ', SchoolName) SEPARATOR ' ') AS OUTPUT
FROM YourTable
于 2013-08-23T05:53:58.060 に答える