Autor Zpráva
t4nn3r
Profil
Ahaj mam tu jeden spq dotaz:
SELECT 
a.id AS ID_mailu, 
b.name AS odesilatel, 
c.name AS prijemce, 
a.subject AS predmet_mailu,
f.name AS nazev_itemu,
CAST(SUBSTRING_INDEX(SUBSTRING_INDEX(g.data, ' ', 15), ' ', -1) AS UNSIGNED) as pocet
FROM characters.mail AS a
JOIN characters.characters AS b ON b.guid = a.sender
JOIN characters.characters AS c ON c.guid = a.receiver
RIGHT JOIN characters.mail_items AS e ON a.id = e.mail_id
LEFT JOIN mangos.item_template AS f on f.entry =  e.item_template
LEFT JOIN characters.item_instance AS g ON g.guid = e.item_guid
WHERE a.has_items =0
ORDER BY odesilatel

Dalo by se nějak z nazev_itemu,pocet udělat ve výsledku sloupce (počet výsledných řádků z tabulky f a g je stejný, ale může jich být 1 až cca 12)
Nevíte někdo jak to udělat ?
Kajman_
Profil *
Proč si z toho neuděláte sloupce na aplikační úrovni, která výsledek zpracovává?

Bude to svižnější než spousta korelovaných poddotazů typu

select a.id,
(select f.name from mangos.item_template as f hwere f.entry=e.item_template order by f.name limit 0, 1) as name1,
(select f.name from mangos.item_template as f hwere f.entry=e.item_template order by f.name limit 1, 1) as name2,
...
(select f.name from mangos.item_template as f hwere f.entry=e.item_template order by f.name limit 12, 1) as name12,


A pokud chcete něco jiného, tak zkuste nějaký konkrétnější a jednodušší příklad, ať víme, po čem vlastně toužíte.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: