Разделяне на резултата?
14 отговора
910 прегледа
Разделяне на резултата?
Здравейте!
Някой може ли да ми даде вариянт за разделяне на резултата от следното запитване към mysql от php:
SELECT t1.title, SUM(t2.value) AS v1
FROM table1 t1, table2 t2
WHERE t1.id=t2.id
GROUP BY t1.title
SORT BY v1
така че да върне като резултат от заявката първите десет от горната заявка плюс сумата от всички останали ("other", SUM v1)
Някой може ли да ми даде вариянт за разделяне на резултата от следното запитване към mysql от php:
SELECT t1.title, SUM(t2.value) AS v1
FROM table1 t1, table2 t2
WHERE t1.id=t2.id
GROUP BY t1.title
SORT BY v1
така че да върне като резултат от заявката първите десет от горната заявка плюс сумата от всички останали ("other", SUM v1)
Re: Разделяне на резултата?
Здравей!
Благодаря за отговора!
Ще може ли да напишеш малко по-подробно как го виждаш че така не разбирам точно какво имаш предвид
, а и mysql няма top а limit, което променя синтаксиса, та затова е важно да напишеш малко код 
Благодаря за отговора!
Ще може ли да напишеш малко по-подробно как го виждаш че така не разбирам точно какво имаш предвид
Re: Разделяне на резултата?
Zdravei,
mai ne sam protchela do kraja ...
, sorry s mysql ne moga da ti pomogna,
rabotja predimno s Transact-SQL i njamam predstava kakvi sa razlikite s mysql...
mai ne sam protchela do kraja ...
rabotja predimno s Transact-SQL i njamam predstava kakvi sa razlikite s mysql...
Re: Разделяне на резултата?
SELECT t1.title, SUM(t2.value) AS v1
FROM table1 t1, table2 t2
WHERE t1.id=t2.id
GROUP BY t1.title
ORDER BY v1
LIMIT 10;
това със сумата на всички останали обаче е съвсем друга история освен ако предварително не знаеш точно колко и кои са тези останали
salle.online.bg/sig
FROM table1 t1, table2 t2
WHERE t1.id=t2.id
GROUP BY t1.title
ORDER BY v1
LIMIT 10;
това със сумата на всички останали обаче е съвсем друга история освен ако предварително не знаеш точно колко и кои са тези останали
salle.online.bg/sig
Re: Разделяне на резултата?
Здравей!
Разяснението го направих за да разбереш че има разлики и е важно да напишеш код за това което мислиш. Аз като разбера идеята бих могъл да си я преработя за mysql
ако е възможно разбира се, но така или шначе би ми дало насока в която да търся решението.
Разяснението го направих за да разбереш че има разлики и е важно да напишеш код за това което мислиш. Аз като разбера идеята бих могъл да си я преработя за mysql
Re: Разделяне на резултата?
Здравей!
Малко съм разсеян и сам обаркал ORDER BY с SORT BY
просто защото това прави, но не това е проблема. Първата част без втората и втората без първата се получават лесно но това не е достатъчно
. Реално проблема е как да получа и двете части като резултат от едно запитване?
Малко съм разсеян и сам обаркал ORDER BY с SORT BY
Re: Разделяне на резултата?
Ами опитай се да формулираш малко по-детайлно това което искаш и ще разбереш защо не може да се направи с една заявка.
Наблегни на дефиницията на "останалите"
Между другото ще съм ти много благодарен ако престанеш да се подписваш като MySQL. Все пак е търговска марка.
salle.online.bg/sig
Наблегни на дефиницията на "останалите"
Между другото ще съм ти много благодарен ако престанеш да се подписваш като MySQL. Все пак е търговска марка.
salle.online.bg/sig
Re: Разделяне на резултата?
Здрвей!
Аз съм го направил с 1 заявка!
Просто исках да разбера дали няма различен начин който да е по-добър от моя
.
Не разчитам на вас да ми дадете решението защото многократно съм се убедил че в този форум пишат нещастници, които нищо не знаят, а ако случайно знаят неща то не биха го споделили с останалите, защото след като толково са се измъчили докато го научат с тъпите си глави, не може да го кажат на другите наготово, нека и те да се мъчат
Аз разчитам само на себе си, а не на смотаняци като вас дето не смеят да обменят опит за до не научат другите на нещо, като не разбират че така и те биха могли да научат нещо!
Ако ти не можеш да го направиш с една заявка не ми казвай че не може да се направи, а кажи "аз не мога да го направя с една заявка"!
Хората като мен с въображение не разбират значението на не мога!
Аз съм го направил с 1 заявка!
Просто исках да разбера дали няма различен начин който да е по-добър от моя
Не разчитам на вас да ми дадете решението защото многократно съм се убедил че в този форум пишат нещастници, които нищо не знаят, а ако случайно знаят неща то не биха го споделили с останалите, защото след като толково са се измъчили докато го научат с тъпите си глави, не може да го кажат на другите наготово, нека и те да се мъчат
Аз разчитам само на себе си, а не на смотаняци като вас дето не смеят да обменят опит за до не научат другите на нещо, като не разбират че така и те биха могли да научат нещо!
Ако ти не можеш да го направиш с една заявка не ми казвай че не може да се направи, а кажи "аз не мога да го направя с една заявка"!
Хората като мен с въображение не разбират значението на не мога!
Re: Разделяне на резултата?
......mislech v drugi den kogato sam na rabota da popitam moi kolega (sas sql spezializiran) po tvoja vapros, no sled tozi posting....
.....!!!!
Blagodari se tche ne jiveech v tchujbina tche s tazi arogantnost i mislene i ot glad chte umresch.
Blagodari se tche ne jiveech v tchujbina tche s tazi arogantnost i mislene i ot glad chte umresch.
Re: Ама си готин ще знаеш :)
То с такъв комплекс за малоценност като твоя по-добре си търси друго място за отдушник.
Той видиш ли го бил направил (щото е най-велик естествено) но не няма да ни каже на нас простосмъртните как го е направил (НЕЕЕЕЕ НЯМААААА!!!)
И пита защото му трябва помощ а само заради повода да ни каже колко сме глупави ах ние горкичките.
Ами, че я кажи като как си го постигнал бе готин пък да видим дали това което си направил има нещо общо с въпроса по начина по който си го задал във форума или отговаря на съвсем друг въпрос, но ние видиш ли сме толкоз тъпи, че не схващаме иносказателният изказ на запитванията ти.
Това дето не знаеш, че в SQL резултатът се сортира с ORDER BY са подробности за простолюдието. Те такива титани на мисълта са като теб са над тези дреболии истествено.
Да си призная отдавна не се бях смял толкова.
Я пак ми припомни кой ти е разрешил (в писмен вид) да се подписваш с търговската марка MySQL?
salle.online.bg/sig
Той видиш ли го бил направил (щото е най-велик естествено) но не няма да ни каже на нас простосмъртните как го е направил (НЕЕЕЕЕ НЯМААААА!!!)
И пита защото му трябва помощ а само заради повода да ни каже колко сме глупави ах ние горкичките.
Ами, че я кажи като как си го постигнал бе готин пък да видим дали това което си направил има нещо общо с въпроса по начина по който си го задал във форума или отговаря на съвсем друг въпрос, но ние видиш ли сме толкоз тъпи, че не схващаме иносказателният изказ на запитванията ти.
Това дето не знаеш, че в SQL резултатът се сортира с ORDER BY са подробности за простолюдието. Те такива титани на мисълта са като теб са над тези дреболии истествено.
Да си призная отдавна не се бях смял толкова.
Я пак ми припомни кой ти е разрешил (в писмен вид) да се подписваш с търговската марка MySQL?
salle.online.bg/sig
Re: Разделяне на резултата?
Аве , великан на информатиката.. я кажи кво е чуството да се оправяш сам.. че ние тука тъпанарите все партньори си търсим...
Няма лошо да си умен лошото е да не разбираш какво е "умен"....
Няма лошо да си умен лошото е да не разбираш какво е "умен"....
Re: Разделяне на резултата?
Ах ни бях довчел до края(т'ва е щоту осте се учъ да читъ и пища)...
С въображениееее ДААААА въобрадженийеее... яя яяяя....
Викат ти mySQL щото не ти знаят имято А!?! :))))))))))
Нема да си палиш, ние тука глупаците така си дрънкяме... :))))
И как се засягаме ...скиваш ли... отивам да са наривъ.....
С въображениееее ДААААА въобрадженийеее... яя яяяя....
Викат ти mySQL щото не ти знаят имято А!?! :))))))))))
Нема да си палиш, ние тука глупаците така си дрънкяме... :))))
И как се засягаме ...скиваш ли... отивам да са наривъ.....
Re: Разделяне на резултата?
Абе комплексар смотан, ето ти го написан на аксески SQL (не за друго, ами дори няма нужда да го "пишеш" ... 
Не съм си играл да наподобявам твоята структурка с 2 свързани таблици и не съм използвал твоите полета, щото не това е целта на упражнението ...
------------------------------------------------------------------------------------
SELECT TOP 3 Table1.TITEL, Sum(Table1.BGN) AS SumOfBGN
FROM Table1
GROUP BY Table1.TITEL
ORDER BY Table1.TITEL
UNION ALL SELECT "OTHERS" AS TITEL, Sum(Table1.BGN) AS SumOfBGN
FROM Table1
WHERE (((Table1.TITEL) Not In (SELECT TOP 3 Table1.TITEL FROM Table1 GROUP BY Table1.TITEL ORDER BY Table1.TITEL)))
GROUP BY "OTHERS"
------------------------------------------------------------------------------------
И сега, отворко, още 2 неща от мен:
1. Колкото и дълго да си търсил топлата вода, то тя вече е измислена от други.
2. Това, че ти си търсил топлата вода безкрайно дълго време за твое най-голямо разочарование не я прави по-топла.
Ако си мислиш че използването на операторите
§ TOP (независимо от локалните му наименования),
§ UNION ALL (нямам идея, дали правиш разлика между UNION и UNION ALL),
§ IN и/или NOT IN и
§ WHERE с критерий подзаявка
е върха на сладоледа, то имаш още много хляб да изядеш, преди да придобиеш сурат да обиждаш наляво и надясно на тема познания по SQL.
П.С. Ах ... пардон, голяма грешка ...

... в заявката се извличат само първите 3 записа и после следва сумата на всички останали 

. Сега отивам да си посипя главата с пепел и да мисля, как ще стане за 10 записа ... че колкото повече, сигурно толкова по-трудно ...
Не съм си играл да наподобявам твоята структурка с 2 свързани таблици и не съм използвал твоите полета, щото не това е целта на упражнението ...
------------------------------------------------------------------------------------
SELECT TOP 3 Table1.TITEL, Sum(Table1.BGN) AS SumOfBGN
FROM Table1
GROUP BY Table1.TITEL
ORDER BY Table1.TITEL
UNION ALL SELECT "OTHERS" AS TITEL, Sum(Table1.BGN) AS SumOfBGN
FROM Table1
WHERE (((Table1.TITEL) Not In (SELECT TOP 3 Table1.TITEL FROM Table1 GROUP BY Table1.TITEL ORDER BY Table1.TITEL)))
GROUP BY "OTHERS"
------------------------------------------------------------------------------------
И сега, отворко, още 2 неща от мен:
1. Колкото и дълго да си търсил топлата вода, то тя вече е измислена от други.
2. Това, че ти си търсил топлата вода безкрайно дълго време за твое най-голямо разочарование не я прави по-топла.
Ако си мислиш че използването на операторите
§ TOP (независимо от локалните му наименования),
§ UNION ALL (нямам идея, дали правиш разлика между UNION и UNION ALL),
§ IN и/или NOT IN и
§ WHERE с критерий подзаявка
е върха на сладоледа, то имаш още много хляб да изядеш, преди да придобиеш сурат да обиждаш наляво и надясно на тема познания по SQL.
П.С. Ах ... пардон, голяма грешка ...
Редактирано от VladoR на