SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 07.03.2018 14:33:39

Irina
Участник
Зарегистрирован: 07.03.2018
Сообщений: 1

Определить день недели с наибольшим количеством пар

Здравствуйте. Есть таблица с полями День недели, Время начала занятия, Наименование предмета, Номер аудитории, ФИО преподавателя.
Задача - определить день недели с наибольшим количеством пар. В php и sql совсем новичок.
Пишу запрос

  select * from schedule count(`day`) limit 1;
выводит ошибку
Предупреждение : mysql_fetch_array (): предоставленный аргумент не является допустимым ресурсом результата MySQL в Z: \ home \ localhost \ www \ data_out.php в строке 32


<html>
<head>
<title>Getting Data out of the Database</title>
</head>
<body bgcolor="#FFFFFF">
<hl>Result</hl>
<form action="data_out.php" method="POST">
<i>Input title of subject</i>:
<a href="data_out.php?orderby=max">Max</a>
<input type="text" name="subject">
<input type="submit" name="submit" value="Submit!">
</form>
<table border="l" cellpadding="3">
<?
/* Эта программа позволяет получить заметки из базы данных */
$db = mysql_connect("localhost", "test", "test");
mysql_select_db("Test", $db);
/*if ($_GET['orderby'] == 'date')
$sql = "select * from schedule order by `date`";
elseif ($_GET['orderby'] == 'lecturer')
$sql = "select * from schedule order by `lecturer`";
elseif ($_GET['orderby'] == 'subject')
$sql = "select * from schedule order by `subject`";*/

if ($_GET['orderby'] == 'max')
$sql1 = "select * from schedule count(`day`) limit 1";
elseif (isset($_POST['submit']))
$sql = "select * from schedule where subject = '".$_POST['subject']."'";
else
$sql = "select * from schedule";

$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
print("<tr><td bgcolor=\"#003399\"><b>");
printf ("<font color=\"white\">%s</font></td></tr>\n",
$row["subject"]);
printf("<td>lecturer: <a href=\"mailto:%s\">%s</a>\n",
$row["lecturer"], $row["id_room"]);
printf("<br>Date: %s<hr>\n",
$row["date"]);
printf ("%s</td></tr>\n",
$row["day"]);
}

$result1 = mysql_query($sql1);
echo $result1;
?>
</table>
</body>
</html>[syntax=php]
[/syntax]

Неактивен

 

#2 07.03.2018 14:46:38

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2419

Re: Определить день недели с наибольшим количеством пар

select * from schedule count(`day`) limit 1;
В любом случае, этот запрос некорректный.
Что именно Вы хотите им выбрать?


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

#3 08.03.2018 02:16:42

Shopen
Гуру
Откуда: Москва
Зарегистрирован: 22.10.2007
Сообщений: 362

Re: Определить день недели с наибольшим количеством пар

что то типа такого?

select count(*) cnt, `day` from `schedule` group by `day` order by cnt desc limit 1;

только имейте ввиду максимумов может быть больше одного

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson