Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    SQL Selezionare DISTINCT solo alcuni campi

    Salve domanda banale per gli esperti, ma io ancora non ci arrivo.
    Se ho due tbl
    tblOggetti
    ID
    Nome
    Descrizione

    tblOfferte
    ID
    IDUtente
    IDOggetto
    Offerta

    Ora se io voglio fare una lista con gli articoli all'asta e la loro ultima offerta faccio questa query:

    SELECT tblOggetti.Nome, tblOfferte.IDUtente, tblOfferte.Offerta FROM tblOggetti LEFT OUTER JOIN tblOfferte ON tblOggetti.ID = tblOfferte.IDOggetto

    MI tornano gli oggetti duplicati se ad esempio hanno più di un'offerta. E' possibile fare tipo un DISTINCT escludendo il campo Offerta?
    O come devo scrivere la query per ottenere la lista degli articoli in vendita (con la relativa offerta massima) senza che si vedano ripetuti?
    Grazie mille
    Enrico Frison
    El signore ghe da e suche a chi che no ga i porsei!

  2. #2
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    se ho capito bene :

    codice:
    SELECT Max(tblofferte.offerta) AS Max_offerta, tbloggetti.id, tbloggetti.nome
    FROM tbloggetti RIGHT JOIN tblofferte ON tbloggetti.id = tblofferte.idoggetto
    GROUP BY tbloggetti.id, tbloggetti.nome;

  3. #3
    Ottimissimo! Ho messo LEFT OUTER JOIN perchè mi interessano tutti gli oggetti, anche quelli senza offerta ma che sono cmq all'asta. Grandioso! Grazie mille!
    Enrico Frison
    El signore ghe da e suche a chi che no ga i porsei!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.