вернуть одно значение в строке выборки в MySQL - PullRequest
0 голосов
/ 30 апреля 2011

У меня есть запрос строки выборки, который возвращает

10 9 8 7 6 5 4 3 2 1

однако я хочу вернуть только последнее значение, которое равно "1" вэто дело.

Я пытался сделать echo row[0][9], но это не работает.как мне получить последнее значение?

Ответы [ 7 ]

1 голос
/ 30 апреля 2011

вы можете использовать функцию end()

$row = array(10, 9, 8, 7);
echo end($row); // displays 7
0 голосов
/ 30 апреля 2011

Вы хотите только 10-ую последнюю строку, которая была добавлена ​​в таблицу? Это будет 10-й идентификатор в списке, если вы сортируете по убыванию идентификатора. Если это то, что вы хотите, вы также можете указать MySQL вернуть именно эту строку. Однако запрос становится немного сложнее:

SELECT t1.*
FROM table t1
INNER JOIN (
  SELECT id
  FROM table
  ORDER BY id DESC
  LIMIT 10
) t2 ON t1.id = t2.id
ORDER BY t1.id ASC
LIMIT 1
0 голосов
/ 30 апреля 2011

Вот мой код.

$query="SELECT blog_id FROM myblogs_view where blog_id<'$id' ORDER BY blog_id DESC LIMIT 10";
$result=mysql_query($query);
while($row=mysql_fetch_row($result) or die(mysql_error())) {
    echo $row;
}

Возвращает значения в одной строке.как получить доступ к значению только в последней строке?

0 голосов
/ 30 апреля 2011

Я бы сделал все это на стороне MySQL, чтобы вы не слишком сильно разделяли логику между PHP и MySQL (если это применимо в данном случае) и использовали запрос с LIMIT 1 и ORDER BY DESC (или ASC в зависимости от вашего стола).

0 голосов
/ 30 апреля 2011

Вы должны отсортировать таблицу по ключевому слову DESC.

0 голосов
/ 30 апреля 2011

Попробуйте echo explode(' ', $row[0])[9]

Прошло немного времени с тех пор, как я сделал PHP, хотя, YMMV.

0 голосов
/ 30 апреля 2011
<?php
$result = mysql_query("SELECT id,email FROM people WHERE id = '42'");
if (!$result) {
    echo 'Could not run query: ' . mysql_error();
    exit;
}
$row = mysql_fetch_row($result);

echo $row[0]; // 42
echo $row[1]; // the email value
?>

Взгляните на этот пример. Скопировано из здесь . Вы должны быть в состоянии достичь того, что вы хотели, взглянув на приведенный выше пример.

Если вы знаете, что такое индекс столбца, вам пора. Но если вы ВСЕГДА хотите, чтобы последний столбец взглянул на функцию mysql_num_fields .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...