Inserire un'espressione matematica in una query

di il
16 risposte

Inserire un'espressione matematica in una query

Buongiorno, ho l'esigenza di inserire all'interno di una query un controllo basato su un valore restituito dalla seguente espressione :
Radice quadrata di (L1-L2)al quadrato + (A1-A2)al quadrato + (B1-B2)al quadrato. Qual'è la giusta sintassi per scrivere questa funzione ?
Inoltre un controllo di questo tipo può essere inserito come condizione della WHERE ?
Grazie di cuore a chi vorrà darmi un suggerimento.

16 Risposte

  • Re: Inserire un'espressione matematica in una query

    Gli elementi dell'espressione da dove li prendi...?
  • Re: Inserire un'espressione matematica in una query

    Gli elementi dell'espressione sono valori contenuti in tre campi in due diverse tabelle
    La mia select in pratica è fatta in questo modo :

    SELECT TABELLA1.ParametroL1, TABELLA1.ParametroA1, TABELLA1.ParametroB1, TABELLA2.ParametroL2, TABELLA2.ParametroA2, TABELLA2.ParametroB2
    FROM TABELLA1, TABELLA2
    WHERE (espressione matematica) between 0 AND 10
    ORDER BY ….;
  • Re: Inserire un'espressione matematica in una query

    Mark60 ha scritto:


    Gli elementi dell'espressione sono valori contenuti in tre campi in due diverse tabelle
    La mia select in pratica è fatta in questo modo :

    SELECT TABELLA1.ParametroL1, TABELLA1.ParametroA1, TABELLA1.ParametroB1, TABELLA2.ParametroL2, TABELLA2.ParametroA2, TABELLA2.ParametroB2
    FROM TABELLA1, TABELLA2
    WHERE (espressione matematica) between 0 AND 10
    ORDER BY ….;
    Devi scrivere dopo la Where l'espressione che hai citato sopra usando i nomi dei campi... non capisco in cosa trovi difficoltà...?
    Se non sai come scrivere l'elevazione alla 2°...
    (Camlo1+Campo2)^2
  • Re: Inserire un'espressione matematica in una query

    L'intera espressione è sotto radice quadrata...qual'è la sintassi corretta per scrivere tutta l'espressione ?
  • Re: Inserire un'espressione matematica in una query

    SQR( ... )
  • Re: Inserire un'espressione matematica in una query

    Grazie mille
  • Re: Inserire un'espressione matematica in una query

    Ma la guida in linea la conosci...?
    Non scambiare il forum per HelpDesk....
  • Re: Inserire un'espressione matematica in una query

    In effetti basterebbero anche 3 secondi con google...
  • Re: Inserire un'espressione matematica in una query

    Ho cercato ripetutamente su Internet ma non ho trovato nulla che mi aiutasse a capire. In ogni caso scusa il disturbo e grazie ancora
  • Re: Inserire un'espressione matematica in una query

    Non è questione di disturbo per nessuno, ma perché tu possa imparare e fare tesoro delle risposte.

    Ad esempio, non capisco cosa tu possa aver cercato "ripetutamente" su Internet se i risultati di una ricerca del tipo

    vba radice quadrata

    sono immediati e chiarissimi...
  • Re: Inserire un'espressione matematica in una query

    Scusate se approfitto ancora della vostra pazienza, purtroppo ho ancora dei problemi con la mia query

    SELECT *
    FROM Tabella1, Tabella2
    WHERE Tabella1.CodColore=Testo1346
    AND Sqr(Tabella1.L - Tabella2.L)^2 + (Tabella1.A - Tabella2.A)^2 + (Tabella1.B - Tabella2.B)^2 = 0
    ORDER BY Tabella2.CodColore;

    Mi restituisce questo messaggio d'errore :

    "L'esecuzione è stata digitata in modo non corretto o è troppo complessa per essere valutata. Un'espressione numerica, ad esempio, può contenere troppi elementi complessi. Semplificare assegnando parti dell'espressione a variabili."

    Come posso riscrivere la query in modo corretto? Scusate ma sono alle prime armi, grazie per la comprensione
  • Re: Inserire un'espressione matematica in una query

    Usare i tag code quando scrivi il codice, anche la SELECT
    1)
    FROM Tabella1, Tabella2
    Fai un prodotto cartesiano visto che non metti un relazione le due tabelle. E' intenzionale?
    2)
    WHERE Tabella1.CodColore=Testo1346 
    Che cos'è Testo1346? è "una variabile", un campo, il testo da cercare? Scritto così mi sa tanto di errore (mancano i delimitatori per il testo, ammesso che sia il testo da cercare)
    3)
    Sqr(Tabella1.L - Tabella2.L)^2 + (Tabella1.A - Tabella2.A)^2 + (Tabella1.B - Tabella2.B)^2 = 0
    L'intera riga poggia molto sull'ordine di esecuzione delle varie "operazioni" (che non ho mai voluto imparare, ad eccezione di quelle di scuola). Credo sia molto più sicuro usare le parentesi per renderlo anche visivamente più chiaro, tipo
    AND (Sqr .... Tabella2.B)^2) = 0
    4)
    Sqr(Tabella1.L - Tabella2.L)^2
    Fai la radice quadrata e poi elevi al quadrato? Se il risultato di Tabella1.L - Tabella2.L è un valore negativo?
  • Re: Inserire un'espressione matematica in una query

    1. Perdonami, cosa sono i tag ? Come andrebbero usati ?

    2. Testo1346 è una casella di testo in cui viene inserito un codice colore. La query dovrebbe leggere tale codice da TABELLA1 e confrontare i tre parametri L,A,B con quelli di tutti i record di TABELLA2 estraendo solo quelli la cui formula indicata mi restituisca un valore uguale a 0

    4. Si, in effetti il valore potrebbe essere anche negativo
  • Re: Inserire un'espressione matematica in una query

    Ma l'estrazione di Radice va fatta sulla SOMMA dei Quadrati oppure solo sul primo Quadrato...?
Devi accedere o registrarti per scrivere nel forum
16 risposte