Попробуйте это:
$data = (new \yii\db\Query())
->select([
'date',
'SUM( IF(status = "Passed", 1, 0) ) AS passed',
'SUM( IF(status = "Failed", 1, 0) ) AS failed',
'SUM( IF(status = "On Hold", 1, 0) ) AS onhold',
'COUNT(*) AS total'
])
->from('qa3d')
->groupBy('date')
->all();
Команда SHOW COLUMNS покажет Вам первичный ключ и уникальные столбцы для таблицы.
Что касается внешних ключей, Вы могли использовать что-то как команда SHOW CREATE TABLE, которая произведет операторы DDL, должен был копировать таблицу.
Необходимо попробовать его и видеть. INFORMATION_SCHEMA является частью некоторого стандарта и поддерживается (главным образом) похожим способом в других базах данных; этот стандарт должен быть зарегистрирован - можно искать тот документ.
Но главным образом путь состоял бы в том, чтобы создать набор тестовых таблиц и затем взглянуть на INFORMATION_SCHEMA для наблюдения то, что там.