Я работаю над получением данных из конкретной базы данных.Мне нужно работать с 3 разными столбцами: «nid», «vid» и «title».Как только я получу 'vid', у него будет самое высокое значение, я должен получить контент, который является 'title', но я должен получить его из строки, которая соответствует наибольшему значению 'vid'.Например, если для vid установлено значение 1253, мне нужно извлечь содержимое из заголовка, соответствующего vid 1253. Как мне его кодировать, чтобы получить заголовок с vid 1253. Мне нужно, чтобы эти две строки соответствовали друг другу.Это какой-то тип строки запроса, я должен сделать.Мне нужен оператор запроса?
$queryNodeRevision = "SELECT nid, MAX(vid) as vid, title FROM node_revision GROUP BY nid";
// line above creates variable $queryNodeRevision > selects column "nid" from table "node_revision"
$results = mysqli_query($connection, $queryNodeRevision) or die("Bad Query: $results");
// line above creates variable $results > actually queries that database and passes in variable "$queryNodeRevision"
$storeNIDAndVIDValues = [];
for ($i = 0; $i < 8000; $i++) {
$storeNIDAndVIDValues[$i] = 0;
// line above assigns initial 'vid'; starts at 0
}
while ($row = mysqli_fetch_array($results)) {
$currentNID = $row['nid'];
$currentVID = $row['vid'];
$theTitleIWant = $row['title'];
if ($currentVID > $storeNIDAndVIDValues[$currentNID]) {
$storeNIDAndVIDValues[$currentNID] = $currentVID;
echo "<h1>" . $row['title'] . "</h1>";[![enter image description here][1]][1]
}
} // line closes while loop
Обновленный код:
<?php
// Establish all database credential variables
$serverName = "localhost";
$username = "root";
$password = "root";
$databaseName = "redesign_static";
// Create Database Connection
$connection = new mysqli($serverName, $username, $password, $databaseName);
// Check Database Connection
if ($connection->connect_error) {
die("Connection failed:" . $connection->connect_error);
} // line ends if statement
$queryNodeRevision = "SELECT nid, vid, title FROM node_revision WHERE vid in (SELECT max(vid) FROM node_revision);";
// line above creates variable $queryNodeRevision >
$results = mysqli_query($connection, $queryNodeRevision) or die("Bad Query: $results");
// line above creates variable $results > actually queries that database and passes in variable "$queryNodeRevision"
while ($row = mysqli_fetch_array($results)) {
$currentNID = $row['nid'];
$currentVID = $row['vid'];
$theTitleIWant = $row['title'];
echo "<h1>" . $row['title'] . "</h1>";
// line prints out desired 'title' into h1 tag
} // line closes while loop
?>