Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2 è la nuova handheld PC gaming con processore AMD Ryzen Z2 Extreme (8 core Zen 5/5c, GPU RDNA 3.5 16 CU) e schermo OLED 8,8" 1920x1200 144Hz. È dotata anche di controller rimovibili TrueStrike con joystick Hall effect e una batteria da 74Wh. Rispetto al dispositivo che l'ha preceduta, migliora ergonomia e prestazioni a basse risoluzioni, ma pesa 920g e costa 1.299€ nella configurazione con 32GB RAM/1TB SSD e Z2 Extreme
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
A re:Invent 2025, AWS mostra un’evoluzione profonda della propria strategia: l’IA diventa una piattaforma di servizi sempre più pronta all’uso, con agenti e modelli preconfigurati che accelerano lo sviluppo, mentre il cloud resta la base imprescindibile per governare dati, complessità e lock-in in uno scenario sempre più orientato all’hybrid cloud
Cos'è la bolla dell'IA e perché se ne parla
Cos'è la bolla dell'IA e perché se ne parla
Si parla molto ultimamente di "bolla dell'intelligenza artificiale", ma non è sempre chiaro perché: l'IA è una tecnologia molto promettente e che ha già cambiato molte cose dentro e fuori le aziende, ma ci sono enormi aspettative che stanno gonfiando a dismisura i valori delle azioni e distorcendo il mercato. Il che, com'è facile intuire, può portare a una ripetizione della "bolla dotcom", e forse anche di quella dei mutui subprime. Vediamo perché
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 25-09-2007, 17:55   #1
Teju
Member
 
L'Avatar di Teju
 
Iscritto dal: Mar 2007
Messaggi: 284
[PHP-SQL] Impossibile... ma mi succede...

Ciao gente, ho una query che, tramite un po' di giri incasinati, arriva a formarsi così:
Codice PHP:
SELECT DISTINCT organization.idorganization.nameorganization.acronym
FROM contact
.org_itemcontact.organization
WHERE 
(
organization.name LIKE '%%'
OR organization.acronym LIKE '%%'
OR organization.website LIKE '%%'
OR organization.comment LIKE '%%'
OR organization.remarks LIKE '%%'
OR organization.assessment LIKE '%%'
)
AND (
(
(
org_item.item_id '843'
AND org_item.org_id organization.id
)
OR (
org_item.item_id '847'
AND org_item.org_id organization.id
)
)
AND (
(
org_item.item_id '513'
AND org_item.org_id organization.id
)
)
)
ORDER BY organization.nameorganization.acronym
LIMIT 0 
30 
Eseguendola non mi trova alcun risultato (anche se ne dovrebbe trovare...)

Ho pensato ad un errore nel formularla, allora ho provato a sostituire dei pezzi con un "1" e così me la risolve sempre:

Codice PHP:
SELECT DISTINCT organization.idorganization.nameorganization.acronym
FROM contact
.org_itemcontact.organization
WHERE 
(
organization.name LIKE '%%'
OR organization.acronym LIKE '%%'
OR organization.website LIKE '%%'
OR organization.comment LIKE '%%'
OR organization.remarks LIKE '%%'
OR organization.assessment LIKE '%%'
)
AND (
(
(
1
)
)
AND (
(
org_item.item_id '513'
AND org_item.org_id organization.id
)
)
)
ORDER BY organization.nameorganization.acronym
LIMIT 0 
30 
e

Codice PHP:
SELECT DISTINCT organization.idorganization.nameorganization.acronym
FROM contact
.org_itemcontact.organization
WHERE 
(
organization.name LIKE '%%'
OR organization.acronym LIKE '%%'
OR organization.website LIKE '%%'
OR organization.comment LIKE '%%'
OR organization.remarks LIKE '%%'
OR organization.assessment LIKE '%%'
)
AND (
(
(
org_item.item_id '843'
AND org_item.org_id organization.id
)
OR (
org_item.item_id '847'
AND org_item.org_id organization.id
)
)
AND (
(
1
)
)
)
ORDER BY organization.nameorganization.acronym
LIMIT 0 
30 
...non capisco dunque come la prima query non dia risultati se entrambe queste trovano una soluzione...
__________________
T -> <- C

.: Vado.li - oltre ogni frontiera!!
.: Ho fatto affari recentemente su HWU Forum con: CloudsITA;
Teju è offline   Rispondi citando il messaggio o parte di esso
Old 25-09-2007, 19:29   #2
Torav
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 558
beh non sono un grande esperto di sql e magari sto per dire una fregnaccia, ma non è detto che le condizioni a cui tu hai sostituito uno siano entrambe vere SIMULTANEAMENTE, il che (se non sbaglio) invece richiede la tua query
Torav è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2007, 11:02   #3
Teju
Member
 
L'Avatar di Teju
 
Iscritto dal: Mar 2007
Messaggi: 284
Boh, secondo me se le due query "modificate" funzionano entrambe dando risultati, anche la prima intera dovrebbe dare risultati... corretti o no ma qualche risultato dovrebbe darmelo... no??
__________________
T -> <- C

.: Vado.li - oltre ogni frontiera!!
.: Ho fatto affari recentemente su HWU Forum con: CloudsITA;
Teju è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2007, 17:10   #4
amedeoviscido
Senior Member
 
Iscritto dal: May 2005
Città: Napoli - Fuorigrotta
Messaggi: 471
Sostituisci il primo AND con una OR.
In pratica, se parte a destra dell'AND è falsa, lo è anche la parte a sinistra. Con OR non è vero. Ti ricordo le tabelle di verità:

A AND B
-------
A B AND
F F F
F V F
V F F
V V V

A OR B
------
A B OR
F F F
F V V
V F V
V V V
__________________
Acquisti sul mercatino: grabrihc, LucaXbox360, Yarsha,micanto1,American horizo,Fnac,schumyFast,STECCO,Ezechiele25,17
Vendite sul mercatino: musodatopo,alexbands,mspr,anto.wajo
amedeoviscido è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2007, 18:12   #5
Teju
Member
 
L'Avatar di Teju
 
Iscritto dal: Mar 2007
Messaggi: 284
Quote:
Originariamente inviato da amedeoviscido Guarda i messaggi
Sostituisci il primo AND con una OR.
In pratica, se parte a destra dell'AND è falsa, lo è anche la parte a sinistra.
Non credo di dover far ciò... nel senso, nella query che ho riportato ho la prima parte con i LIKE "%%", ovvero prendere tutto, ma di solito verrebbe una cosa tipo LIKE "%nome%", dunque lì dovrebbe rimanere l'AND, perchè appunto voglio che non mi compaiano risultati se una delle due cose non è rispettata...
__________________
T -> <- C

.: Vado.li - oltre ogni frontiera!!
.: Ho fatto affari recentemente su HWU Forum con: CloudsITA;
Teju è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2007, 18:27   #6
amedeoviscido
Senior Member
 
Iscritto dal: May 2005
Città: Napoli - Fuorigrotta
Messaggi: 471
Scusami ma allora non riesco a capire a cosa serva la prima parte!?
__________________
Acquisti sul mercatino: grabrihc, LucaXbox360, Yarsha,micanto1,American horizo,Fnac,schumyFast,STECCO,Ezechiele25,17
Vendite sul mercatino: musodatopo,alexbands,mspr,anto.wajo
amedeoviscido è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2007, 19:52   #7
Torav
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 558
Quote:
Originariamente inviato da Teju Guarda i messaggi
Boh, secondo me se le due query "modificate" funzionano entrambe dando risultati, anche la prima intera dovrebbe dare risultati... corretti o no ma qualche risultato dovrebbe darmelo... no??
beh se l'intersezione dei due insieme che le query "modificate" ti danno è vuoto allora con l'AND non trovi nulla...
Torav è offline   Rispondi citando il messaggio o parte di esso
Old 27-09-2007, 19:22   #8
Teju
Member
 
L'Avatar di Teju
 
Iscritto dal: Mar 2007
Messaggi: 284
Quote:
Originariamente inviato da amedeoviscido Guarda i messaggi
Scusami ma allora non riesco a capire a cosa serva la prima parte!?
Beh, la prima parte mi pare ovvio cosa serve, cercare all'interno delle organizzazioni con una parola chiave.
L'esempio scritto da me ha il LIKE "%%" ovvero cerca tutto, ma la query generata non è sempre uguale, può anche avere le condizioni LIKE "%srl%" e cerca solo tra le org che sono srl...

Quote:
Originariamente inviato da Torav Guarda i messaggi
beh se l'intersezione dei due insieme che le query "modificate" ti danno è vuoto allora con l'AND non trovi nulla...
Ma, se io sostituisco con l'1 (ovvero con un TRUE) prima questa parte:
Codice PHP:

org_item.item_id '843' 
AND org_item.org_id organization.id 

OR ( 
org_item.item_id '847' 
AND org_item.org_id organization.id 

e poi questa:
Codice PHP:

org_item.item_id '513' 
AND org_item.org_id organization.id 

ed entrambi trova risultati, vuol dire che entrambe le condizioni generano un TRUE, altrimenti se una fosse FALSE quando è scritta intera e non sostituita con l'1 non dovrebbe dare cmq risultati...

__________________
T -> <- C

.: Vado.li - oltre ogni frontiera!!
.: Ho fatto affari recentemente su HWU Forum con: CloudsITA;
Teju è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2007, 14:00   #9
Alien
Senior Member
 
L'Avatar di Alien
 
Iscritto dal: Aug 1999
Città: Como
Messaggi: 1500
per forza che non funziona
Quale riga può avere due valori differenti di
Quote:
organization.id
?

tu scrivi:

Quote:
(
org_item.item_id = '843'
AND org_item.org_id = organization.id
)
OR (
org_item.item_id = '847'
AND org_item.org_id = organization.id
)
AND

Quote:
(
org_item.item_id = '513'
AND org_item.org_id = organization.id
)
e quando mai può esser realizzata?

Comunque la clausola di join
Quote:
org_item.org_id = organization.id
è inutile scriverla tre volte è sufficiente una sola e risulta anche più chiaro il codice di conseguenza.
__________________
il forum italiano delle torce www.cpfitaliforum.it
Alien è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2007, 15:25   #10
Teju
Member
 
L'Avatar di Teju
 
Iscritto dal: Mar 2007
Messaggi: 284
No... non mi pare proprio...
Quella clausola di JOIN è corretta secondo me!

In pratica io seleziono tutte gli "organization.id" della tabella "organization", ma scelgo solo quelli che, collegandomi alla tabella org_item (composta da 2 campi: org_id e item_id), risultano avere l'idem_id pari al valore scelto.
Tutti gli "organization.id" hanno lo stesso valore all'interno della query...

__________________
T -> <- C

.: Vado.li - oltre ogni frontiera!!
.: Ho fatto affari recentemente su HWU Forum con: CloudsITA;
Teju è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2007, 15:29   #11
Teju
Member
 
L'Avatar di Teju
 
Iscritto dal: Mar 2007
Messaggi: 284
Quote:
Originariamente inviato da Alien Guarda i messaggi
Comunque la clausola di join è inutile scriverla tre volte è sufficiente una sola e risulta anche più chiaro il codice di conseguenza.
Su questo ti do ragione, ma essendo una query generata dinamicamente preferivo per "chiarezza" segnalarla ogni volta...
__________________
T -> <- C

.: Vado.li - oltre ogni frontiera!!
.: Ho fatto affari recentemente su HWU Forum con: CloudsITA;
Teju è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2007, 15:50   #12
Alien
Senior Member
 
L'Avatar di Alien
 
Iscritto dal: Aug 1999
Città: Como
Messaggi: 1500
Quote:
Originariamente inviato da Teju Guarda i messaggi
No... non mi pare proprio...
Quella clausola di JOIN è corretta secondo me!

scusa
avevo letto di fretta e ho fatto confusione tra i diversi ID
Appena ho un attimo ci rifletto meglio.
__________________
il forum italiano delle torce www.cpfitaliforum.it
Alien è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2007, 20:19   #13
Alien
Senior Member
 
L'Avatar di Alien
 
Iscritto dal: Aug 1999
Città: Como
Messaggi: 1500
Ho ri-flettuto nuovamente e son ri-tornato alla mia precedente conclusione: è impossibile che sia verificato quell'AND tra 2 valori diversi dell'ID.
Tu vorresti ottener una riga dove org_item.item_id abbia due valori diversi il che non è possibile.
Cioè:

(org_item.item_id = '843' OR org_item.item_id = '847') AND org_item.item_id = '513' non potrà mai esser verificato perchè o vale 843 oppure 847 OPPURE (e non "e anche") 513. Il problema è tutto lì.

Come se pretendessi di ottenere il nome del presentatore di Miss Italia che fa di nome Mike e Loretta. Non ottieni due risultati ma nessuno.
__________________
il forum italiano delle torce www.cpfitaliforum.it
Alien è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2007, 21:09   #14
Teju
Member
 
L'Avatar di Teju
 
Iscritto dal: Mar 2007
Messaggi: 284
Quote:
Originariamente inviato da Alien Guarda i messaggi
(org_item.item_id = '843' OR org_item.item_id = '847') AND org_item.item_id = '513' non potrà mai esser verificato perchè o vale 843 oppure 847 OPPURE (e non "e anche") 513. Il problema è tutto lì.
uhm... ti seguo credo, forse ho capito... ma come si fa allora a fare una query così??
Suggerimenti?

...EDIT: ok, ho capito l'errore, ora xò non saprei come creare la query...
__________________
T -> <- C

.: Vado.li - oltre ogni frontiera!!
.: Ho fatto affari recentemente su HWU Forum con: CloudsITA;

Ultima modifica di Teju : 01-10-2007 alle 21:11.
Teju è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2007, 21:27   #15
Alien
Senior Member
 
L'Avatar di Alien
 
Iscritto dal: Aug 1999
Città: Como
Messaggi: 1500
Quote:
Originariamente inviato da Teju Guarda i messaggi
uhm... ti seguo credo, forse ho capito... ma come si fa allora a fare una query così??
Suggerimenti?

...EDIT: ok, ho capito l'errore, ora xò non saprei come creare la query...
Dipende dal risultato che vuoi ottenere
Così di primo acchito direi mettendo in OR anche la condizione

Quote:
(
(
org_item.item_id = '513'
AND org_item.org_id = organization.id
)
)
però se posti la struttura delle tabelle con qualche dato e il risultato che vuoi ottenere provo a perderci un po' di tempo, tanto son a casa ammalato
__________________
il forum italiano delle torce www.cpfitaliforum.it
Alien è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2007, 22:02   #16
Teju
Member
 
L'Avatar di Teju
 
Iscritto dal: Mar 2007
Messaggi: 284
Ok, provo a spiegarti... ho 3 tabelle:

organization (interessa solo che abbia un ID identificativo)
item (hanno ID identificativo, un ID_categoria e un label)
org_item (hanno ID identificativo, org_id e item_id)

ho una pagina di search in cui posso cercare una organizzazione secondo una parola chiave o secondo dei criteri di ricerca sugli ITEM.

Gli ITEM sono suddivisi in categorie.

Criteri di ricerca sugli ITEM:
- i vari ITEM della stessa categoria sono in OR
- tra le diverse categorie dev'esserci un AND

Mi spiego con un esempio di dati: nella tabella ITEM ho:
1 . 1 . Italy
2 . 1 . France
3 . 2 . Socialmente utili
4 . 1 . Spain

Ho una organizzazione:
232 . nome e caratteristiche varie...

In org_item ho:
1 . 232 . 1
2 . 232 . 2
3 . 232 . 3

Ovvero l'organizzazione con ID 232 è classificata sotto Italy, France e Socialmente utili.

La mia query potrebbe chiedermi di selezionare le organizzazioni che hanno in "categoria = 1" Italy o France (dunque in OR) AND siano socialmente utili.

Spero si capisca...
__________________
T -> <- C

.: Vado.li - oltre ogni frontiera!!
.: Ho fatto affari recentemente su HWU Forum con: CloudsITA;
Teju è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2007, 20:31   #17
Bl4xoR
Senior Member
 
L'Avatar di Bl4xoR
 
Iscritto dal: Feb 2005
Città: Bisceglie (BT)
Messaggi: 1091
formula le query in modo corretto verbalmente, senza metterci robe di codice etc. si capirebbe di più
__________________
[Laptop] DELL XPS 15 9510 (2021) i7-11800H, 16GB, 1TB SSD WDC SN730 NVMe, GeForce RTX 3050 4GB, Display Full HD [Mobile] Google Pixel 4a
Bl4xoR è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'...
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti AWS re:Invent 2025: inizia l'era dell'AI-as-a-Se...
Cos'è la bolla dell'IA e perché se ne parla Cos'è la bolla dell'IA e perché se...
BOOX Palma 2 Pro in prova: l'e-reader diventa a colori, e davvero tascabile BOOX Palma 2 Pro in prova: l'e-reader diventa a ...
FRITZ!Repeater 1700 estende la rete super-veloce Wi-Fi 7 FRITZ!Repeater 1700 estende la rete super-veloce...
SpaceX: un satellite ha fotografato il s...
36 idee regalo con offerte Amazon sotto ...
Sony assume il controllo dei Peanuts: Sn...
DJI Neo scende a 149€ su Amazon, in vers...
Scoperto un nuovo esopianeta che orbita ...
Blue Origin NS-37: successo per la missi...
Potrebbe essere stata rilevata una super...
La cometa interstellare 3I/ATLAS è...
Xiaomi 17 Ultra: l'autonomia non sarà un...
Il processo produttivo a 2 nm di TSMC è ...
L'atteso aggiornamento dei driver della ...
The Elder Scrolls VI nel 2029 e Fallout ...
Il Ryzen 7 9850X3D appare nel catalogo d...
Weekend pre natalizio Amazon, ecco tutte...
Prezzi giù su Oral-B iO: spazzolini elet...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 22:18.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v