Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    Query complessa con excel

    Salve amici, vi scrivo perchè non riesco a trovare una soluzione, mi sto cervellando da un pò di tempo ma non riesco anche perchè ammetto la mia "ignoranza" sull'argomento comunque vi espongo il problema e spero che qualcuno mi possa dare una mano:

    Ho creato un database di una infermeria dove ho creato varie tabelle e varie query con le varie relazioni e fin qui tutto ok.

    Adesso però mi trovo bloccato perchè ci sono due tabelle ANAGRAFICA (dove ci sono tutti i dati delle persone) e ECG (dove ci sono gli elettrocardiogrammi della gente) ho impostato una relazione 1 a n quindi una persona può aver fatto più ecg.

    Poi ho fatto una query che mi valuta se quell'ecg e ancora valido oppure no, nel senso che a seconda dell'età valuta la validità.

    Però adesso vorrei sapere persona per persona in un elenco il personale che ha l'ecg scaduto perchè magari ci sono persone che hanno più di un ecg di cui magari qualcuno è scaduto però se ne ha uno più recente che non sia scaduto non mi deve risultare nell'elenco...

    NON SO SE HO RESO L'IDEA

    SPERO CHE QUALCUNO MI AIUTI

    CIAO CIAO E GRAZIE
    Black Alino

  2. #2
    Dovresti fare così:

    SELECT * FROM TB_ANAGRAFICA A,
    (SELECT DISTINCT ANA_ID FROM TB_ECG WHERE SCADUTO=1) B,
    (SELECT DISTINCT ANA_ID FROM TB_ECG WHERE SCADUTO=0) C
    WHERE A.ID_ANA=B.ID_ANA
    AND A.ID_ANA=C.ID_ANA

    B sono gli ecg scaduti e C quelli non scaduti

    prova e facci sapere

    Ciao
    Mik

  3. #3

    Problema

    Un altro problemino...mi sn dimenticato di dirvi che la tabella anagrafica ha come chiave primaria due campi cognome e nome....quindi come cambierebbe la query??? Grazie mille
    Black Alino

  4. #4
    Un altro problemino...mi sn dimenticato di dirvi che la tabella anagrafica ha come chiave primaria due campi cognome e nome....quindi come cambierebbe la query??? Grazie mille
    cioè vuoi dire che leghi la tabella anagrafica con la tabella ecg utilizzando nome e cognome? questo sarebbe l'unico inconveniente da risolvere.

    Facci sapere
    Mik

  5. #5
    Si in pratica la chiave univoca sono l'unione di cognome e nome...

    grazie
    Black Alino

  6. #6
    Ok, se non vuoi modificare le chiavi per le join, allora la query diventa:


    SELECT * FROM TB_ANAGRAFICA A,
    (SELECT DISTINCT CONCAT(COGNOME,NOME) AS ANA_ID FROM TB_ECG WHERE SCADUTO=1) B,
    (SELECT DISTINCT CONCAT(COGNOME,NOME) AS ANA_ID FROM TB_ECG WHERE SCADUTO=0) C
    WHERE CONCAT(A.COGNOME,A.NOME)=B.ID_ANA
    AND CONCAT(A.COGNOME,A.NOME)=C.ID_ANA

    Ciao
    Mik

  7. #7

    Funzione concat

    Quando provo a creare la query mi dice funzione concat non definita nell'espressione

    Aiutamiiiiii
    Black Alino

  8. #8
    CONCAT è una funzione di MySql, che concatena due stringhe. sostituiscila con l'equivalente di Excel/Access (sai come si fa...)

  9. #9

    Ebete

    Scusami mi sento un ebete non so come si fa
    Black Alino

  10. #10
    OK, in access diventa:

    SELECT * FROM TB_ANAGRAFICA A,
    (SELECT DISTINCT COGNOME + NOME AS ANA_ID FROM TB_ECG WHERE SCADUTO=1) B,
    (SELECT DISTINCT COGNOME + NOME AS ANA_ID FROM TB_ECG WHERE SCADUTO=0) C
    WHERE A.COGNOME + A.NOME=B.ID_ANA
    AND A.COGNOME + A.NOME=C.ID_ANA

    Ciao
    Mik

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.