У меня есть запрос, который я хочу отсортировать по алфавиту, но хитрость в том, что я хочу, чтобы сортировка обрабатывала два столбца одинаково.Например, если первая строка first_col
равна apple
, а вторая строка second_col
равна aardvark
, я хочу, чтобы значение во второй строке second_col
было указано перед ,значение в первом ряду first_col
.Значение (не NULL
или ''
) всегда будет существовать в каждой строке second_col
, но значение в first_col
может быть ''
.Надеюсь, я объяснил это достаточно хорошо.Мне все равно, нужно ли мне использовать MySQL или PHP для этого, но после сортировки массив читается и выводится в таблицу HTML.Какие-нибудь мысли?
РЕДАКТИРОВАТЬ
Это то, что у меня сейчас есть для кода.В моем запросе MySQL мне нужно, чтобы b_name
и l_name
были равны.Столбец b_name
не всегда имеет значение.Когда я помещаю значения в таблицу, это основывается на существовании b_name
.Если b_name
не существует, f_name
и l_name
объединяются для замены b_name
.
$query = "SELECT * FROM customers ORDER BY b_name, l_name";
$result = mysql_query($query);
mysql_close($link);
$num = mysql_num_rows($result);
for ($i = 0; $i < $num; $i++){
$row = mysql_fetch_array($result);
$class = (($i % 2) == 0) ? "table_odd_row" : "table_even_row";
if($row[b_name]!=''){
echo "<tr class=".$class.">";
echo "<td><a href=Edit_Customer.php?c_id=".$row[c_id].">".$row[c_id]."</a></td>";
echo "<td><a href=Edit_Customer.php?c_id=".$row[c_id].">".$row[b_name]."</a></td>";
echo "<td><a href=Edit_Customer.php?c_id=".$row[c_id].">".$row[phone]."</a></td>";
echo "</tr>";
}
else{
echo "<tr class=".$class.">";
echo "<td><a href=Edit_Customer.php?c_id=".$row[c_id].">".$row[c_id]."</a></td>";
echo "<td><a href=Edit_Customer.php?c_id=".$row[c_id].">".$row[f_name]." ".$row[l_name]."</a></td>";
echo "<td><a href=Edit_Customer.php?c_id=".$row[c_id].">".$row[phone]."</a></td>";
echo "</tr>";
}
}
?>
</table>