Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[BASE] linguaggio sql per if() in libreoffice

199 views
Skip to first unread message

Littleiron

unread,
Oct 4, 2011, 10:13:11 AM10/4/11
to
Buongiorno a tutto il NG ho cercato in rete e ho trovato la risposta che
cercavo ma base mi informa che c'e' un errore nella sintassi sql.
Il problema e' semplice in una query devo far valorizzare un campo con
una selezione in base ad un "se", con sql standard lo risolvo cosi':

if((campo >= 0,"D","A")

e con mysql funziona.
In base non riesco a farlo accettare. Ho provato con casewhen ma non
funzia lo stesso.
Come faccio a far accettare utilizzando base una query sql con la
funzione sopra trascritta.
Ringrazio chi mi risolvera' il problema.
--
Littleiron

martello

unread,
Oct 4, 2011, 10:46:58 AM10/4/11
to

> if((campo>= 0,"D","A")
>
> e con mysql funziona.
> In base non riesco a farlo accettare. Ho provato con casewhen ma non
> funzia lo stesso.
> Come faccio a far accettare utilizzando base una query sql con la
> funzione sopra trascritta.
> Ringrazio chi mi risolvera' il problema.

D e A cosa sono?
Dei testi che vuoi visualizzare?

Littleiron

unread,
Oct 4, 2011, 10:53:17 AM10/4/11
to
martello <"martelozzo1(martello)"@tin.it> wrote in news:4e8b1c50$0$15669
$4faf...@reader2.news.tin.it:
Si, praticamente in 'campo' e' memorizzato un numero che puo' essere
negativo o positivo, nel primo caso e' di segno 'A' (Avere) altrimenti
'D' (Dare). Il campo (perdonami la ripetizione) dove viene memorizzato il
risultato della funzione (che si chiamera' segno) mi serve per poter
fare poi delle pivot in calc distinte per operazioni dare e avere.


--
Littleiron

Lidrie

unread,
Oct 4, 2011, 1:19:09 PM10/4/11
to
Littleiron ci chiese :

> if((campo >= 0,"D","A")

> e con mysql funziona.

davvero?

> In base non riesco a farlo accettare. Ho provato con casewhen ma non
> funzia lo stesso.
> Come faccio a far accettare utilizzando base una query sql con la
> funzione sopra trascritta.
> Ringrazio chi mi risolvera' il problema.

manca una parentesi ovvero ne hai una di troppo ((

if((campo >= 0),"D","A")
if(campo >= 0,"D","A")

--
Sans

grotta continua

unread,
Oct 4, 2011, 1:31:24 PM10/4/11
to
On 4 Ott, 16:53, Littleiron <iron.lit...@yahoo.it> wrote:
> martello <"martelozzo1(martello)"@tin.it> wrote in news:4e8b1c50$0$15669
> $4fafb...@reader2.news.tin.it:
credo che D e A vadano scritti cosi
'D'
'A'
se no base li interpreta come campi

Littleiron

unread,
Oct 5, 2011, 3:19:04 AM10/5/11
to
grotta continua <grottac...@gmail.com> wrote in
news:aa859d15-0d57-4176...@k6g2000yql.googlegroups.com:

[cut]
>
> credo che D e A vadano scritti cosi
> 'D'
> 'A'
> se no base li interpreta come campi

Ho provato a sostituire quanto da te suggerito ma non lo accetta lo
stesso.

Di seguito la formula come l'ho scritta e l'errore che mi esce:

IF("dare" = 0 ,'D','A')

Stato SQL: HY000

Impossibile eseguire la query. La funzione non è supportata.

Posso anche fare a meno di questo campo nel database, me lo creo in calc,
ma mi resta la curiosita' di sapere come fare.
Grazie ancora per l'attenzione.



--
Littleiron

Littleiron

unread,
Oct 5, 2011, 3:22:02 AM10/5/11
to
Lidrie <lid...@mesnews.org> wrote in news:mn.24877dba010123b6.27518
@mesnews.org:

> Littleiron ci chiese :
>
>> if((campo >= 0,"D","A")
>
>> e con mysql funziona.
>
> davvero?

si.....

>
>
> manca una parentesi ovvero ne hai una di troppo ((

>
> if((campo >= 0),"D","A")
> if(campo >= 0,"D","A")
>

e' un errore di trascrizione nel ng, la formula originale e' come l'hai
scritta nel secondo caso, e non funziona.




--
Littleiron
0 new messages