Powinieneś użyć obracania stołu. W MySQL nie ma polecenia PIVOT, więc możesz użyć tego zapytania -
SELECT
t1.id,
MAX(IF(t2.typename = 'CL', t1.available, NULL)) AS CL,
MAX(IF(t2.typename = 'ML', t1.available, NULL)) AS ML
FROM table1 t1
JOIN table2 t2
ON t1.typeid = t2.typeid
GROUP BY
t1.id;
Tabele przestawne MySQL (przekształcanie wierszy w kolumny) .
Użyj funkcji GROUP_CONCAT zamiast MAX, jeśli wiele available
wartości są możliwe.