Полное исправление благодаря руководству @ AlexG
void Start () {
gameOver = false;
StartCoroutine (SpawnWaves());
}
IEnumerator SpawnWaves()
{
yield return new WaitForSeconds(startWait);
while (gameOver != true)
{
for (int i = 0; i < hazardCount; i++)
{
if(gameOver)break;
GameObject enemy = enemies[Random.Range(0, enemies.Length)];
Instantiate(enemy, spawnPosition1, spawnRotation1);
Instantiate(enemy, spawnPosition2, spawnRotation2);
Instantiate(enemy, spawnPosition3, spawnRotation3);
Instantiate(enemy, spawnPosition4, spawnRotation4);
Instantiate(enemy, spawnPosition5, spawnRotation5);
Instantiate(enemy, spawnPosition6, spawnRotation6);
yield return new WaitForSeconds(spawnWait);
}
yield return new WaitForSeconds(waveWait);
enemies[0].GetComponent<EnemyBehviour>().currentHealth *= eenter code herenemyHealthMultiplier;
}
}
Можно заставить это работать с чем-то вокруг этих строк:
select e.empID, fname, lname, title, dept, projectIDCount
from
(
select empID, count(projectID) as projectIDCount
from employees E left join projects P on E.empID = P.projLeader
group by empID
) idList
inner join employees e on idList.empID = e.empID
Таким образом, Вы избегаете дополнительной группы операциями, и можно получить любые данные, которые Вы хотите. Также у Вас есть лучший шанс хорошо использовать индексы на некоторых сценариях (если Вы не возвращаете полную информацию), и может быть лучше объединен с подкачкой страниц.
"это стало бы ДЕЙСТВИТЕЛЬНО ужасным, чтобы попытаться включать всех их в группу пунктом".
Да - это - единственный способ сделать это * - просто копируют и вставляют неагрегированные столбцы в группу пунктом, удаляют псевдонимы, и это так хорошо, как это добирается...
*Вы могли перенести его во вложенный ВЫБОР, но это, вероятно, так же ужасно...
MySQL необычен - и технически не совместим со стандартом SQL - в разрешении Вам опустить объекты из пункта GROUP BY. В стандартном SQL каждый несовокупный столбец в списке выборки должен быть перечислен полностью в пункте GROUP BY (или по имени или порядковым числом, но это удерживается от использования).
(О, хотя MySQL необычен, хорошо, что это позволяет стенографию.)
Вам не нужно присоединяться к подзапросу, так как нет необходимости создавать группу на основе empID от сотрудников - вы можете сделать это в поле projectLeader из проектов.
С помощью внутреннего соединения (как я уже сказал) вы получите список сотрудников, у которых есть хотя бы один проект. Если вам нужен список всех сотрудников, просто измените его на left join
select e.empID, e.fname, e.lname, e.title, e.dept, p.projectIDCount
from employees e
inner join ( select projLeader, count(*) as projectIDCount
from projects
group by projLeader
) p on p.projLeader = e.empID
Подзапрос в предложении select также может быть подходящим. Это будет работать для приведенного примера, но может не работать для реального сложного запроса, с которым вы имеете дело.
select
e.empID, fname, lname, title, dept
, (select count(*) from projects p where p.projLeader = e.empId) as projectCount
from
from employees E