Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    14

    Query con interpretazione stringa

    Buongiorno a tutti, ho un problema con una query che prevede la gestione piuttosto avanzata di una stringa.

    Nel mio caso ho due tabelle che sono le seguenti

    Tabella "SLB"

    ID | HEADER | Part | Value |....
    01 | Part:5 | C28 | 47
    02 | Part:10 | U7B | 860
    03 | Part:35 | D4 | 530


    Tabella "Codifica"

    ID | codcom | descom | noterigo...
    01 | 2A002 | PCBA | C2;C28;A10
    02 | A234 | AC4E | D28;D4
    03 | 343 | T6O4 | U7B;C6


    Il risultato della query deve essere uguale alla tabella SLB ma deve riportare anche i campi codcom e descom della tabella Codifica, nel caso in cui il campo Part Reference della tabella SLB sia presente nel campo noterigo.

    Ad esempio, in questo caso devo ottenere:


    ID | HEADER | Part | Value | codcom | descom |
    01 | Part:5 | C28 | 47 | 2A002 | PCBA
    02 | Part:10 | U7B | 860 | 343 | T6O4
    03 | Part:35 | D4 | 530 | A234 | AC4E

    La mia difficoltà sta nel parsare la stringa del campo noterigo.
    Che posso fare?
    Grazie.

  2. #2
    ciao,

    non indichi il db con cui stai lavorando... quindi ti scrivo una soluzione generica in sql...

    Fai la tua query poi metti nel where :

    codice:
    WHERE Codifica.noterigo LIKE %Slb.part%
    Non si può risolvere un problema usando lo stesso modo di pensare che ha creato quel problema.
    Albert Einstein

    Siate Affamati, siate Folli, siate Onesti e siate Generosi

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    14
    Scusami, hai pienamente ragione.
    Sto usando semplicemente Open office, perchè è un problema nato in 5 minuti ecc.
    Credo possa bastare l'SQL standard.

    Ho fatto una prima prova, ho scritto:
    SELECT "SLB.HEADER", "SLB.Part Reference", "codifica.codcom", "codifica.descom"
    FROM "SBL", "codifica"
    WHERE Codifica.noterigo LIKE %SLB.Part Reference%

    Ma mi da un errore di sintassi...
    Guarderò se open office gestisce la sintassi in modo differente

    Grazie

  4. #4

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    14
    SELECT SLB.HEADER,SLB.Part Reference,codifica.codcom,codifica.descom
    FROM SBL,codifica
    WHERE codifica.noterigo LIKE %SLB.Part Reference%

    Mi da errore di sintassi


    Ps.

    Ho cercato di replicare il tutto in PGadmin3

    con la sintassi senza virgolette mi dice che c'è un errore nel Like, sul %

    "
    ERROR: syntax error at or near "%"
    LINE 3: WHERE noterigo LIKE %SLB.PartReference%
    "

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    14
    Vorrei fare una domanda, ma siamo sicuri cha al LIKE può essere passata come stringa il valore di un record, come se il LIKE fosse parametrico rispetto ad un record e non ad un pattern fisso?
    Cominciano a venirmi i dubbi. javascript:void(0);

    Grazie.

  7. #7
    Originariamente inviato da seraoraf
    Vorrei fare una domanda, ma siamo sicuri cha al LIKE può essere passata come stringa il valore di un record, come se il LIKE fosse parametrico rispetto ad un record e non ad un pattern fisso?
    Cominciano a venirmi i dubbi. javascript:void(0);

    Grazie.
    si , si puo fare tranquillamente.

    Open office non so la sintassi. Ma spesso open office e' particolare e non standardizzato
    Non si può risolvere un problema usando lo stesso modo di pensare che ha creato quel problema.
    Albert Einstein

    Siate Affamati, siate Folli, siate Onesti e siate Generosi

  8. #8
    lì invece ci vanno

    WHERE codifica.noterigo LIKE '%'+SLB.Part Reference+'%'

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.