Sobes.tech
Middle

Come visualizzare l'indirizzo attuale e il prezzo per ogni annuncio in SQL?

sobes.tech AI

Risposta dell'AI

Per visualizzare l'indirizzo e il prezzo attuali di ogni annuncio in SQL, è necessario definire cosa si intende per "attuale" — di solito, l'ultimo record per data o versione per ogni annuncio.

Supponiamo ci sia una tabella ads con colonne: ad_id, address, price, updated_at.

Esempio di query che, per ogni annuncio, seleziona il record con la data di aggiornamento massima:

SELECT ad_id, address, price
FROM ads a
WHERE updated_at = (
    SELECT MAX(updated_at)
    FROM ads
    WHERE ad_id = a.ad_id
);

Se il database supporta le funzioni di finestra, si può usare:

SELECT ad_id, address, price
FROM (
    SELECT *, ROW_NUMBER() OVER (PARTITION BY ad_id ORDER BY updated_at DESC) as rn
    FROM ads
) sub
WHERE rn = 1;

Questo permetterà di ottenere per ogni annuncio l'indirizzo e il prezzo più recenti.