Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 1999
    Messaggi
    336

    select dentro una select ... possibile?

    Ciao a tutti Ho questa query che mi filtra (e somma) gli apparecchi di data antecedente al 2004 ... fin qui tutto OK


    sql:
    Codice PHP:
    SELECT T_REPARTI.NOME_NEGOZIOSum(T_DOTAZIONE.QUANT) AS SommaDiQUANTT_REPARTI.ID_NEGOZIOT_REPARTI.CODICE_NEGOZIO FROM ((T_DOTAZIONE INNER JOIN T_MATERIALI ON T_DOTAZIONE.ID_MODELLO T_MATERIALI.ID_MODELLOINNER JOIN T_TIPOMATERIALI ON T_MATERIALI.ID_TIPOMATERIALE T_TIPOMATERIALI.COD_MATINNER JOIN T_REPARTI ON T_DOTAZIONE.COD_REP T_REPARTI.CODICE_NEGOZIOWHERE (((T_TIPOMATERIALI.COD_MATLIKE 'PC%') AND ((T_MATERIALI.ANNO)<=2004)) GROUP BY T_REPARTI.NOME_NEGOZIOT_REPARTI.ID_NEGOZIOT_REPARTI.CODICE_NEGOZIO HAVING (((Sum(T_DOTAZIONE.QUANT))>0)) ORDER BY Sum(T_DOTAZIONE.QUANTDESCT_REPARTI.NOME_NEGOZIO ASC 
    apro il recordset

    do while iRecordsShown < iPageSize And Not rs.eof
    (utilizzo la paginazione)

    ... mostro i record ...

    iRecordsShown = iRecordsShown + 1
    rs.MoveNext
    loop

    il risultato è, logicamente,
    NOME NEGOZIO(1) - SOMMA OBSOLETI (1)
    NOME NEGOZIO(2) - SOMMA OBSOLETI (2)
    NOME NEGOZIO(3) - SOMMA OBSOLETI (3)
    NOME NEGOZIO(4) - SOMMA OBSOLETI (4)


    ora, a fianco di SOMMA OBSOLETI volevo inserire una query che ni filtrasse gli apparecchi con data maggiore di 2004 (relativi a ciascun negozio)

    Codice PHP:
    SELECT Sum(T_DOTAZIONE.QUANT) AS SommaDiQUANT FROM (T_DOTAZIONE INNER JOIN T_MATERIALI ON T_DOTAZIONE.ID_MODELLO T_MATERIALI.ID_MODELLOINNER JOIN T_TIPOMATERIALI ON T_MATERIALI.ID_TIPOMATERIALE T_TIPOMATERIALI.COD_MAT WHERE (((T_DOTAZIONE.COD_REP)="&RS("CODICE_NEGOZIO")&") AND ((T_TIPOMATERIALI.COD_MATLike 'PC*') AND ((T_MATERIALI.ANNO)>2004)) 
    ma la query non funziona ... come mai?

    se faccio il response.write della query e la copio-incollo in access, funziona ma a video non viene visualizzato nulla

    dove sbaglio?

    ciao

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 1999
    Messaggi
    336

    questo errore

    il messaggio di errore è il seguente:
    ADODB.Field error '80020009'

    Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.

  3. #3
    Utente di HTML.it L'avatar di barney09
    Registrato dal
    Dec 2000
    Messaggi
    1,296
    questa non è una query dentro una query, ma una query dentro un ciclo WHILE.

    Esatto?

    Il messaggio di errore sembra indicare un problema con il recordset.

    Sei sicuro di non avere utilizzato il recordset RS anche per la query dentro al ciclo?

  4. #4
    non ho ben capito il problema

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 © 2026 vBulletin Solutions, Inc. All rights reserved.