Надо вывести фирмы и все вакаснии которые есть у фирмы. есть две связанные таблицы: фирма и вакансии. у одной фирмы может быть много вакансий, у вакансии одна фирма. могу вывести так: PHP: <?php $sql = "SELECT*FROM rd, vakans WHERE rd.idrd = vakans.rd_idrd"; $array = mysqli_query($db, $sql); while($row = mysqli_fetch_array($array)){ echo "$row[rd] - "; echo "$row[vakans] <br> "; } ?> фирма1 - менеджер фирма1 - продавец фирма2 - кассир фирма2 - бухгалтер надо вывести так: фирма 1 - менеджер, продавец фирма2 - кассир, бухгалет Пробовал while в while , но это было не правильно. Как правильно?
@viktor72 думаю хватит одного while, если отсортировать по фирмам, тогда просто в цикле при смене фирмы выводи её название и вакансию, если фирма не меняется то просто вакансию
спасибо. разобрал --- Добавлено --- Спасибо. то что надо.. --- Добавлено --- Как посоветовали добрые люди, сделал. Теперь у меня есть два варианта решить одну задачу. PHP: <?php $sql = "SELECT rd.idrd, rd.rd, GROUP_CONCAT(DISTINCT vakans.vakans SEPARATOR ', ') AS vakans FROM rd LEFT JOIN vakans ON rd.idrd = vakans.rd_idrd GROUP BY rd.idrd"; $query = mysqli_query($db, $sql); while($row = mysqli_fetch_array($query)){ echo '<br>'."$row[rd]".'<br>'; echo "$row[vakans]".', '; } ?> и PHP: <?php $sel2 = "SELECT * FROM rd, vakans WHERE rd.idrd = vakans.rd_idrd"; $qwer2 = mysqli_query($db, $sel2); do{ if($type!=$row3[rd]){ $type = $row3[rd]; echo '<br>'."$type".':<br>'; } echo "$row3[vakans]".', '; }while($row3 = mysqli_fetch_array($qwer2)); ?> Интуитивно чувствую , что первый вариант правильней. Я где то читал, что желательнее все решать на уровне базы а не на уровне кода. Прошу оценить какой вариант правильнее с точки зрения скорости, трафика, нагрузки на сервер и т.д. Спасибо. п.с. во втором варианте не приятный момент - вывод в браузер начинается с запятой. понятно для серьезного проекта это не годится. Как бы сделать чтоб не вылазели запятые до или когда ужевывод закончился.
Не юзай do...while. Никогда. И выкинь поповщину, по которой учишься. --- Добавлено --- Из двух вариантов выбирай тот, который тебе удобнее, вот и все.
Предам анафеме попова! Вообще то , в поповскую секту я попал по ссылке , не изучал я его. А что касается оптимизации, правильнотси и прочего, как правильнее?
На глаз, первое понятнее и проще в сопровождении, когда вернешься к этому фрагменту кода спустя какое-то время. А именно по скорости и тд...хз, замеряй --- Добавлено --- Но, скажу я тебе, сейчас вообще пофиг. Вот когда начнутся тормоза, тогда начнешь думать, откуда они растут. А сейчас тебе даже индексы не нужны.
Как же оно без индексов? или я чего не опнимаю. первиный ключи и индекс это одно и тоже или нет? id = индекс ? или я ещё не постиг?