Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di diablobox
    Registrato dal
    Feb 2001
    residenza
    Pisa
    Messaggi
    1,154

    Ordinare per risultato COUNT

    Ciao

    qualcuno sa dirmi che c'è di sbagliato in questa query=?
    SELECT IDprodotto, IDazienda, IDtipo_prodotto, PR_nome, PR_anno, (SELECT COUNT(carrello.IDcarrello) FROM carrello WHERE carrello.IDprodotto = prodotti.IDprodotto) AS NumeroVendite FROM enlucc.prodotti
    WHERE PR_ONLINE = -1
    ORDER BY " & FILTRO & ""
    in pratica il FILTRO è una variabile che mi ordina i risultati
    se inserisco "NumeroVendite" che è il risultato del mio count mi da un errore
    mentre se provo la query in locale da dreamweaver funziona?
    Forse c'è qualcosa di spabliato nel passaggio del valore alla query??

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Pur non essendo un esperto di query o subquery sicuro che come l'hai scritta tu AS NumeroVendite non si riferisca alla prima select, come la so io le parentesi delimitano (), poi forse sbaglio.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    puoi usare l'ordinale, quindi nel tuo caso ORDR BY 6

  4. #4
    Utente di HTML.it L'avatar di diablobox
    Registrato dal
    Feb 2001
    residenza
    Pisa
    Messaggi
    1,154
    con il numero non funziona

    ho provato anche con un campo che me lo ordinava correttamente anceh prima.
    ORDER BY 6

    ho provato a spostare la parentesi ma non funziona nemmeno cosi..

  5. #5
    che vuol dire "non funziona"?

  6. #6
    Utente di HTML.it L'avatar di diablobox
    Registrato dal
    Feb 2001
    residenza
    Pisa
    Messaggi
    1,154
    mi da questo errore se metto NumeroVendite:

    Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

    [MySQL][ODBC 3.51 Driver][mysqld-5.0.37]Colonna sconosciuta 'NumeroVendite' in 'order clause'
    IDEM se metto il numero come mi hai detto te:

    Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

    [MySQL][ODBC 3.51 Driver][mysqld-5.0.37]Colonna sconosciuta '3' in 'order clause'

  7. #7
    strano. ORDER BY column_number è accettato da MySQL

    ----------------------------------------------------
    impariamo a fare un po' di debug

    *subito* dopo la composizione della stringa SQL metti

    Response.Write "maGGica SQL...: " & sql
    Response.Flush

    poi posta quello che viene a video
    ----------------------------------------------------

  8. #8
    Utente di HTML.it L'avatar di diablobox
    Registrato dal
    Feb 2001
    residenza
    Pisa
    Messaggi
    1,154
    non mi scrive la stringa SQL solo se setto l'ordine con il campo che non funziona
    negli altri casi scrive correttamente la stringa SQL


    sono riuscito a scrivere solo il filtro:
    ORDER BY NumeroVendite ASC


    tieni presente che Numero Vendite potrebbe essere anche 0 (o null??) visto che in pratica conta il numero di righe che ci sono in un altra tabella collegata alla prima da un ID

    sarà per quello?

  9. #9
    il numero indica la posizione della colonna, non il suo valore. posta il codice che hai usato, grazie

  10. #10
    Utente di HTML.it L'avatar di diablobox
    Registrato dal
    Feb 2001
    residenza
    Pisa
    Messaggi
    1,154
    scusa non ho capito che codice devo mandarti...


    quello della stringa SQL me lo fa vedere solo quando utilizzo un valore ORDER che funziona e mi fa vedere i risultati
    Con quello che non funziona non fa vedere il codice

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.