<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[ottimizzare query mysql]]></title><description><![CDATA[<p dir="auto">Ciao ragazzi, non sono molto esperto di mysql e vi vorrei chiedere se è possibile ottimizzare una query. In breve...</p>
<p dir="auto">Ho sotto mano un database strutturato in modo assurdo <img src="https://connect.gt/plugins/nodebb-plugin-emoji/emoji/android/274c.png?v=mke5oho4ck8" class="not-responsive emoji emoji-android emoji--x" title=":x:" alt="❌" /> gestione magazzino con un'unica tabella; nella tabella ci inserisco i reparti, la merce e il personale;<br />
i campi sono: id, tipo, id_up, nome</p>
<p dir="auto">tipo=r indica che è un reparto; tipo=m è una merce; tipo=p è uno del personale;<br />
quando inserisco merce o personale, nel campo id_up metto l'id del reparto;<br />
quando inserisco un reparto metto id_up=0;</p>
<p dir="auto">i dati della tabella magazzino per esempio potrebbero essere questi:</p>
<p dir="auto">id, tipo, id_up, nome<br />
1, 'r', 0, 'detersivi' (reparto detersivi con id=1)<br />
2, 'm', 1, 'detersivo per piatti' (merce del reparto 1)<br />
3, 'm', 1, 'detersivo per pavimenti' (merce del reparto 1)<br />
4, 'p', 1, 'mario rossi' (personale del reparto 1)<br />
.....</p>
<p dir="auto">Partendo da un qualsiasi prodotto devo risalire al personale adetto al reparto. Ossia partendo da 'detersivo per piatti' devo risalire a 'mario rossi'.<br />
Al momento faccio 2 query:<br />
"select id_up from magazzino where id=2" (prendo id_up dal prodotto)<br />
mi salvo id_up in una variabile (abc) e poi<br />
"select nome from magazzino where id_up=abc"<br />
e quindi con un semplice ciclo while ho i nomi degli addetti al reparto dei detersivi.</p>
<p dir="auto">Posso ottenere i nomi del personale con un'unica query partendo dall'id prodotto?? <img src="https://connect.gt/plugins/nodebb-plugin-emoji/emoji/customizations/f71a0c43-865f-4388-9868-8b387eebeeb1-mmmm.gif?v=mke5oho4ck8" class="not-responsive emoji emoji-customizations emoji--mmm" title=":?" alt=":mmm:" /></p>
<p dir="auto">Grazie mille <img src="https://connect.gt/plugins/nodebb-plugin-emoji/emoji/android/1f642.png?v=mke5oho4ck8" class="not-responsive emoji emoji-android emoji--slightly_smiling_face" title=":)" alt="🙂" /></p>
]]></description><link>https://connect.gt/topic/111183/ottimizzare-query-mysql</link><generator>RSS for Node</generator><lastBuildDate>Fri, 22 May 2026 14:16:25 GMT</lastBuildDate><atom:link href="https://connect.gt/topic/111183.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 26 Sep 2009 02:51:43 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to ottimizzare query mysql on Sat, 26 Sep 2009 06:55:19 GMT]]></title><description><![CDATA[<p dir="auto">Per come è insensatamente organizzata quella tabella, la tua è l'unica soluzione possibile in quanto non si possono ne effettuare join ne subquery.</p>
<p dir="auto">Sarebbero da smistare reparti, personale e prodotti in 3 tabelle distinte e raggruppate per l'id_up che corrisponde all'id nella tabella dei reparti, così da poter archiviare maggiori info e poter recuperare tutto sempre e solo con un unica query che interroga tutte e tre le tabelle.</p>
]]></description><link>https://connect.gt/post/859656</link><guid isPermaLink="true">https://connect.gt/post/859656</guid><dc:creator><![CDATA[blancks]]></dc:creator><pubDate>Sat, 26 Sep 2009 06:55:19 GMT</pubDate></item></channel></rss>