Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Query

  1. #1
    Utente di HTML.it L'avatar di rambco
    Registrato dal
    Aug 2001
    Messaggi
    582

    Query

    Allora io ho una tabella con le iniziativa

    1 Iniziativa1
    2 iniziativa2
    .
    .
    .

    Poi ho invece una tabella dove racchiudo tutte le news delle varie iniziative...

    1 1 News 1 Iniziativa 1 12/05/2005
    2 1 News 2 Iniziativa 1 13/06/2005
    3 2 News 1 Iniziativa 2 13/06/2005


    ora quello che serve a me è fare una selezione in cui siano contenute l'ultima news per ciascun iniziativa.
    Sono riuscito a fare qualcosa cosi
    codice:
    sql = "SELECT idIniziativa, (SELECT TOP 1 id FROM tbNews WHERE idiniziativa = t.idiniziativa ORDER BY id DESC) AS id,(SELECT TOP 1 Data FROM tbNews WHERE idiniziativa = t.idiniziativa ORDER BY id DESC) AS Data,(SELECT TOP 1 Titolo FROM tbNews WHERE idiniziativa = t.idiniziativa ORDER BY id DESC) AS Titolo, (SELECT TOP 1 LEFT(Testo,25) FROM tbNews WHERE idiniziativa = t.idiniziativa ORDER BY id DESC) AS Testo,(SELECT img_small FROM tbIniziativa WHERE id=t.idiniziativa) AS img_small,(SELECT titolo FROM tbIniziativa WHERE id=t.idiniziativa) AS nomeini FROM tbNews t WHERE idIniziativa>0 GROUP BY idIniziativa"
    Funziona, solo che non riesco a ordinare a secondo la data le news.

  2. #2
    devi mettere l'order by dopo la group by, alla fine del codice sql

  3. #3
    Utente di HTML.it L'avatar di rambco
    Registrato dal
    Aug 2001
    Messaggi
    582
    se metto un ORDER BY Data DESC poi mi da questo errore

    codice:
    Impossibile eseguire una query che non include l'espressione "Data" specificata come parte di una funzione di aggregazione.

  4. #4
    non riesci a prendere la più recente news della singola iniziativa, o non riesci a esporre il recordset che ottieni a partire dalla news più recente?

  5. #5
    Utente di HTML.it L'avatar di rambco
    Registrato dal
    Aug 2001
    Messaggi
    582
    la prima che hai detto...con la query che ho postato ci riesco solo che non me le mette in ordine cronologico...se inserisco un group by mi dice l'errore che ho postato sopra

  6. #6
    se nella GROUP BY aggiungi anche il campo DATA e poi metti ORDER BY DATA DESC riesci a ottenere quello che vuoi?

  7. #7
    Utente di HTML.it L'avatar di rambco
    Registrato dal
    Aug 2001
    Messaggi
    582
    se metto data nel group bay dopo ci sono anche dei duplicati

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.