データを修正する必要があると思います。すべてのデータが修正されるまで、次の 2 つのステートメントを続けて実行できます。
INSERT INTO meva (fruits)
SELECT SUBSTR(fruits, LOCATE('|', fruits) - 1) FROM meva
WHERE LOCATE('|', fruits) > 0;
UPDATE meva
SET fruits = SUBSTR(fruits, LOCATE('|', fruits) + 1)
WHERE LOCATE('|', fruits) > 0;
これでテーブルが固定されます。
ただし、面接の質問 (または学校の課題) で、そのまま表から数える場合は、特定の行のパイプの最大数を知っている場合にのみ行うことができます。
したがって、行内のパイプの最大数が 1 の場合、select ステートメントは次のようになります。
SELECT count(*),
CASE WHEN LOCATE('|', fruits) > 0 THEN SUBSTR(fruits, LOCATE('|', fruits) - 1) ELSE fruits END
FROM meva
GROUP BY CASE WHEN LOCATE('|', fruits) > 0 THEN SUBSTR(fruits, LOCATE('|', fruits) - 1) ELSE fruits END
複数のパイプを連続して使用できる場合、CASE ステートメントはより複雑になります。