Как я могу получить номер недели даты, используя mysqli для каждой записи?
Учитывая, что у меня есть table1, содержащий столбец date со следующими двумя записями:
2018-03-14
2018-05-14
Я хочу увидеть номера недель в двух вышеупомянутых записях. Моя основная проблема в том, что я не умею обрабатывать результат своего запроса.
$sql = 'SELECT WEEK(date) FROM table1 WHERE YEAR(beginn) = "2018"';
$db_erg = mysqli_query($con, $sql);
while ($row = $db_erg->fetch_array())
{
echo $row[0]; // or $row['week'] if you used AS week
}
Ваш запрос должен работать. Пожалуйста, добавьте ожидаемый результат и текущий результат.
Да, я думаю, что jquery тоже правильный, но я могу его отобразить? эхо ..?
Если вы считаете, что запрос правильный, в чем именно проблема?
Что содержит $db_erg?
Проблема в том, как получить результат для каждой записи? while ($ row = $ db_erg-> fetch_array ()) {???
Может быть - в чем проблема с повторением результата?
Вам следует начать с руководства.
echo $ row [0]; было решением моей проблемы.
@Aneconomist mssql и mysql - два разных животных. Я не понимаю, как это может быть дубликатом.
@ C2486 здесь применяется то же самое, как и в моем комментарии выше ^






$sql = 'SELECT WEEK(date) AS week FROM table1 WHERE YEAR(date) = 2018';
Для предложения WHERE вы можете захотеть выяснить, дает ли отказ от метода YEAR преимущества в производительности.
WHERE date BETWEEN CAST('2018-01-01' AS DATE) AND CAST('2018-12-31' AS DATE);
WHERE date >= CAST('2018-01-01' AS DATE) AND date <= CAST('2018-12-31' AS DATE);
$db_erg в приведенном выше примере - это результаты (объект mysqi_result), поэтому вы сможете получить их с помощью цикла while.
// check query succeeded
if ($db_erg) {
while ($row = $db_erg->fetch_array())
{
// process the data
echo $row[0]; // or $row['week'] if you used AS week
}
}
Как я могу получить результат запроса? $ db_erg = mysqli_query ($ con, $ sql); эхо?
Добавлена дополнительная информация
Спасибо, но как мне построить синтаксис в цикле WHILE, чтобы получить две календарные недели из примера?
Просто echo $row[0]
Спасибо, @vogomatix, это было решение;)
Прохладный. Пожалуйста, примите и проголосуйте за ответ, если / когда сможете. Я также отредактировал ваш вопрос, чтобы прояснить, на что вам нужно было ответить.