Я озадачен этим.Я пробовал несколько углов, и некоторые из них близки, но ни один из них не является полностью правильным.
Мне нужно выбрать одно из 3 полей таблицы.Первый - это log_id с уникальным номером для каждой строки, второй - это entry_id, который исходит из другой таблицы и содержит несколько одинаковых номеров записей, а последний - одну букву, представляющую тип.«D» означает, что соответствующая запись была удалена, кстати.
Пример:
"SELECT log_id, entry_id, type from entry_log order by entry_id";
... имеет следующий пример результата (фрагмент реального запроса):
6 1 C
31 1 D
8 2 C
25 2 D
11 3 C
14 3 D
13 3 D
18 4 D
17 4 D
12 4 C
22 5 D
15 5 C
398 6 U
249 6 U
44 6 U
587 6 R
272 6 U
498 6 R
578 6 U
590 6 U
529 6 R
564 6 D
43 7 U
42 7 D
16 7 C
Мне нужно выбрать самое высокое значение строки [0] для каждого значения строки [1], значение строки [2] которого равно 'D'.Другими словами, правильный выбор, когда строка [1] = 6, где строка [0] = 564 в массиве выше.Мне нужно поместить один entry_id (строка [1]) с соответствующим log_id (строка [0]) в другой массив.
Я пробовал следующее:
"SELECT MAX(log_id), entry_id, type from entry_log where type = 'D'";
Это делаетне учитывать тот факт, что некоторые строки 1 имеют записи выше, чем те, которые соответствуют D (поскольку они больше не удаляются).
Я пытался вернуться назад:
"SELECT log_id, entry_id, type from entry_log where log_id in ('U','R','C','x')";
Опять нетлогично.
$log = "SELECT log_id, entry_id, type from entry_log order by entry_id;
$lgcomp = mysql_query($log);
while ($row = mysql_fetch_array($logcomp, MYSQL_NUM)) {
$cli = $row[0];
$cei = $row[1];
$ct = $row[2];
}
foreach ($cli as $key=>$clid)
if $cei =
... в тупик ...
foreach($cli as $key => $clid){
$lgentry = $cei[$key];
switch($clid) {
case $lgentry = :
break;
... не могу понять ...
У меня просто нетТехническое понимание синтаксиса PHP MySQL для правильной реализации.
Будут оценены любые идеи или просто указание мне в правильном направлении.Нет, вам не нужно писать мой сценарий (мне нравится выяснять его, вот для чего все это для меня), но я тратил много времени на этот, и я знаю, что мне просто не хватает некоторого синтаксисаи понимание сортировки в PHP / mysql.Что касается поиска в Интернете, я придумываю только бесконечные повторы, которые не помогают в этом случае.
Спасибо!Этот 72-летний человек многому научился здесь за последние пару недель.