Возвращать стоимость колонны основываясь на максимуме другой MySQL

Таблица

Pedido | Revisión | Cliente 1 | 0 | 1 1 | 0 | 2 2 | 0 | 1 1 | 1 | 1 1 | 1 | 2 2 | 1 | 1 1 | 2 | 1 2 | 0 | 2 3 | 0 | 1

Поскольку был бы должен оставаться вид (скрываются данные о меньших ревизиях в последнюю)

Pedido | Revisión | Cliente 1 | 1 | 2 2 | 1 | 1 1 | 2 | 1 2 | 0 | 2 3 | 0 | 1

Упорядоченная

Pedido | Revisión | Cliente 1 | 2 | 1 2 | 1 | 1 3 | 0 | 1 1 | 1 | 2 2 | 0 | 2

Таблица, с которой я работаю, - гораздо больше и я использую вид, который соединяет заказы с вырыванием тех же самых, он существует возможность, которую revisione какой-то заказ и себе должны издавать данные, которые есть внутри, тогда чтобы идентифицировать последний заказ revisionado, был бы должен брать ревизию самую высокую из всех заказов, но я не нахожу метод, чтобы это получать.

Только подобно информации я помещу реальные подмостки и вид, который он вооружит, что то, что он делает, состоит в том, чтобы приносить все заказы (которые в реальной таблице идентифицируются как списки офиса) с Вашими статьями, которые есть внутри (вырывание списков офиса)

Таблица ты заносишь в список офиса

introducir la descripción de la imagen aquí

Таблица удалила списков

introducir la descripción de la imagen aquí

Таблица вида и заявления SELECT.

introducir la descripción de la imagen aquí

select ld.listas_id AS listas_id,
ld.lista_numero AS lista_numero,
ld.revision AS revision,
ld.fecha AS fecha,
ld.proyectista AS proyectista,
desglo_ld.codigo_qr AS codigo_qr,
desglo_ld.codigo AS codigo,
desglo_ld.descripcion AS descripcion,
desglo_ld.cantidad AS cantidad,
desglo_ld.largo AS largo,
desglo_ld.desarrollo AS desarrollo,
desglo_ld.color AS color,
desglo_ld.peso AS peso,
desglo_ld.superficie AS superficie
FROM listas_de_despacho ld
INNER JOIN desgloce_de_ld desglo_ld ON ld.listas_id = desglo_ld.listas_id

Поскольку могут наблюдать предметы в ревизии 1, у них есть стоимость, отличная от первого (также могли бы исчезать коды или присоединяться больше, это редактирование в список офиса). Что я должен добавлять к заявлению для того, чтобы он выполнил мою необходимость?

Важно чтобы иметь в виду Ее lista_numero и ревизия таблицы listas_de_despacho они могут повторяться, но для отличных obra_id.

Пример:

lista_numero | revision | obra_id 1 | 0 | 1 2 | 0 | 1 1 | 0 | 2 1 | 1 | 1 2 | 1 | 1 1 | 0 | 3

Пробуйте

(SELECT max(listas_id) FROM listas_de_despacho GROUP BY lista_numero) который возвращает единственный id самый высокий из всех раз, который повторяет тот же список офиса-> Проблема, числа списков офиса могут повторяться, если работы отличные.

1
задан 01.11.2019, 16:06
1 ответ

Если я понимаю хорошо, ты нуждаешься в списке s¦lo с últimas ревизии. Мне кажется, что ты можешь получать это таким образом:

SELECT ld.listas_id AS listas_id,
    ld.lista_numero AS lista_numero,
    ld.revision AS revision,
    ld.fecha AS fecha,
    ld.proyectista AS proyectista,
    desglo_ld.codigo_qr AS codigo_qr,
    desglo_ld.codigo AS codigo,
    desglo_ld.descripcion AS descripcion,
    desglo_ld.cantidad AS cantidad,
    desglo_ld.largo AS largo,
    desglo_ld.desarrollo AS desarrollo,
    desglo_ld.color AS color,
    desglo_ld.peso AS peso,
    desglo_ld.superficie AS superficie
FROM (
    SELECT *
    FROM listas_de_despacho a
    WHERE a.listas_id IN (
        SELECT MAX(b.listas_id)
        FROM listas_de_despacho b
        WHERE a.lista_numero = b.lista_numero
            AND a.obra_id = b.obra_id
    )
    ORDER BY lista_numero ASC, revision ASC
) ld
INNER JOIN desgloce_de_ld desglo_ld ON ld.listas_id = desglo_ld.listas_id
0
ответ дан 01.12.2019, 14:40

Теги

Похожие вопросы