AKB Forums

Go Back   AKB Forums > Technical sections > Languages, Compilers and Interpreters > Web Development
Home Register Blogs FAQ Members List Calendar Downloads Arcade Mark Forums Read

Web Development Java/PHP/Perl/ASP and more

Troubles when posting message? Click here! :: Проблемы с отправлением сообщения? Нажмите сюда!

Reply
 
LinkBack Thread Tools Display Modes
Old May 25, 2005, 10:48   #1
В бой аргхххххххх!
 
hov's Avatar
 
Join Date: Sep 2002
Location: Vik, Medieval Norway
Posts: 1,491
Rep Power: 7
Reputation: 48
Send a message via ICQ to hov
SQL question

pust imeiutsia 2 tablicy

Code:

1. Sellers

id name sex
1  Katia  f
2  Ania   f
3  Nata   good:)

2. Sales

id  seller_id  book_id   price
1    1              451     100
2    1              452     199
3    2             1247      15
4    1              547       20
Nujno napisat' zapros kotoryi vydast spisok imen prodavcov vmeste s summarnoi stoimostiu prodannyh knig


primer outputa

id name total
1 Katia 219
2 Ania 15
3 Nata 0



P.S.

Prisutstvie v vyvode Naty, kotoraia nichego ne prodala, obiazatel'no.
hov is offline   Reply With Quote Quote selected
Old May 25, 2005, 11:26   #2
Доктор
 
Джанлука's Avatar
 
Join Date: Jul 2004
Location: Moscow
Posts: 1,777
Rep Power: 5
Reputation: 57
"select sellers.name, SUM(sales.price) as prodannie_knigi WHERE sales.id = sallers.id"


По-моему так.
Джанлука is offline   Reply With Quote Quote selected
Old May 25, 2005, 11:32   #3
Академик
 
Join Date: Jan 2002
Location: Shambala
Posts: 6,801
Rep Power: 8
Reputation: 190
Send a message via ICQ to Երեխա
sxala tenc grel, inch imanas inch kani nersum? tarber SUBD eri vra tarber ban klini

yete SQL server a Left outter join gri, yete Oracle a gri bayc nayi zaprosid mej 2 hatic avel chlini voch stabil kashxati

SELECT Sellers.ID, Sellers.Name, Sales.book_id, Sales.price
FROM Sellers LEFT OUTER JOIN
Sales ON Sellers.SalerID = Sales.seller_id

GROUP BY Sellers.ID, Sellers.Name, Sales.book_id, Sales.price
__________________
Ախպեր դու էմիգրացիան տուրիզմի հետ մի խառնի...

http://moskull.livejournal.com/
Երեխա is offline   Reply With Quote Quote selected
Old May 25, 2005, 16:53   #4
Banned
 
Forever Child's Avatar
 
Join Date: Oct 2001
Location: ...осень колибри
Posts: 7,493
Rep Power: 0
Reputation: 10
Send a message via ICQ to Forever Child Send a message via AIM to Forever Child Send a message via Yahoo to Forever Child
Quote:
Originally Posted by erexa
sxala tenc grel, inch imanas inch kani nersum? tarber SUBD eri vra tarber ban klini

yete SQL server a Left outter join gri, yete Oracle a gri bayc nayi zaprosid mej 2 hatic avel chlini voch stabil kashxati

SELECT Sellers.ID, Sellers.Name, Sales.book_id, Sales.price
FROM Sellers LEFT OUTER JOIN
Sales ON Sellers.SalerID = Sales.seller_id

GROUP BY Sellers.ID, Sellers.Name, Sales.book_id, Sales.price
ну и где здесь сумма расчитывается?
Forever Child is offline   Reply With Quote Quote selected
Old May 25, 2005, 17:02   #5
Banned
 
Forever Child's Avatar
 
Join Date: Oct 2001
Location: ...осень колибри
Posts: 7,493
Rep Power: 0
Reputation: 10
Send a message via ICQ to Forever Child Send a message via AIM to Forever Child Send a message via Yahoo to Forever Child
SELECT Sellers.id, Sellers.name, Sum(Sales.price) AS TotalSale FROM Sellers LEFT JOIN Sales ON Sellers.id = Sales.seller_id GROUP BY Sellers.id, Sellers.name;
Forever Child is offline   Reply With Quote Quote selected
Old May 25, 2005, 17:19   #6
ЙЦУКЕН
 
Join Date: Jul 2002
Location: 0x68,0x69,0x72, 0x69,0x6e,0x67, 0x20,0x6e,0x6f, 0x77
Posts: 3,114
Rep Power: 7
Reputation: 10
Send a message via ICQ to nm
Quote:
Originally Posted by Forever Child
SELECT Sellers.id, Sellers.name, Sum(Sales.price) AS TotalSale FROM Sellers LEFT JOIN Sales ON Sellers.id = Sales.seller_id GROUP BY Sellers.id, Sellers.name;
аха, правильно.

2hov: если будешь фильтровать результат - помни.


where делает фильтрацию _до_ JOIN-a
having делает фильтрацию после того, как join выполнился... синтаксис
SELECT ....
FROM .... JOIN ....
WHERE condition
GROUP BY .......
HAVING ........
ORDER BY .......


а ваще если хочешь понять как же оно работает - резко рекомендую РТФМ. Дейт К. Дж. Введение в системы баз данных. на citforum есть хорошие статьи(учебники) - именно по теории.
nm is offline   Reply With Quote Quote selected
Old May 25, 2005, 18:36   #7
hex god
 
Griffon2-7's Avatar
 
Join Date: Mar 2002
Location: Yerevan, AM
Posts: 3,173
Rep Power: 7
Reputation: 19
Send a message via ICQ to Griffon2-7
Quote:
Originally Posted by Forever Child
SELECT Sellers.id, Sellers.name, Sum(Sales.price) AS TotalSale FROM Sellers LEFT JOIN Sales ON Sellers.id = Sales.seller_id GROUP BY Sellers.id, Sellers.name;
То, что надо. Правда, есть СУБД, где для seller-а "Ната" такой запрос выкинет не "0", а "NULL"

> erexa

Mi or arit klini 12-13 (arden chem hishum) JOIN-anoc query kgtnem, post kanem stegh...
Informix-i tak lav el stabil ashxatum a, lenqov poqr aghyusakneris cav@ tanem...
__________________
Ленинградское время 0 часов 0 минут
Griffon2-7 is offline   Reply With Quote Quote selected
Old May 25, 2005, 20:14   #8
ЙЦУКЕН
 
Join Date: Jul 2002
Location: 0x68,0x69,0x72, 0x69,0x6e,0x67, 0x20,0x6e,0x6f, 0x77
Posts: 3,114
Rep Power: 7
Reputation: 10
Send a message via ICQ to nm
Quote:
Originally Posted by Griffon2-7
То, что надо. Правда, есть СУБД, где для seller-а "Ната" такой запрос выкинет не "0", а "NULL"

> erexa

Mi or arit klini 12-13 (arden chem hishum) JOIN-anoc query kgtnem, post kanem stegh...
Informix-i tak lav el stabil ashxatum a, lenqov poqr aghyusakneris cav@ tanem...
sum от столбика null-ов даст null? хм, а интерестно, какой субд такое делает ?
nm is offline   Reply With Quote Quote selected
Old May 26, 2005, 04:05   #9
hex god
 
Griffon2-7's Avatar
 
Join Date: Mar 2002
Location: Yerevan, AM
Posts: 3,173
Rep Power: 7
Reputation: 19
Send a message via ICQ to Griffon2-7
Quote:
Originally Posted by nm
sum от столбика null-ов даст null? хм, а интерестно, какой субд такое делает ?
Какой-какой... MS SQL Server На
нем правильно вот так (isnull - MS SQL-овская функция, какая она в других SQL-ах, не знамо):

select sellers.id, sellers.name,
sum(isnull(sales.price,0)) as totalprice
from sellers
left join sales on sellers.id = sales.seller_id
group by sellers.id, sellers.name

Informix насколько я помню не настолько гадок и в сумме вернет нулик, а не нуЛЛик. Но все же проверять помоему стоит, т.к. left join все-таки используется, а не inner join.
__________________
Ленинградское время 0 часов 0 минут
Griffon2-7 is offline   Reply With Quote Quote selected
Old May 26, 2005, 04:13   #10
Академик
 
Join Date: Jan 2002
Location: Shambala
Posts: 6,801
Rep Power: 8
Reputation: 190
Send a message via ICQ to Երեխա
morcel ei SUM grel
bayc LEFT JOIN haskacutyun chka
ka INNER JOIN
LEFT OUTER JOIN
RIGHT OUTER JOIN
u senc
__________________
Ախպեր դու էմիգրացիան տուրիզմի հետ մի խառնի...

http://moskull.livejournal.com/
Երեխա is offline   Reply With Quote Quote selected
Old May 26, 2005, 04:21   #11
hex god
 
Griffon2-7's Avatar
 
Join Date: Mar 2002
Location: Yerevan, AM
Posts: 3,173
Rep Power: 7
Reputation: 19
Send a message via ICQ to Griffon2-7
Quote:
Originally Posted by erexa
morcel ei SUM grel
bayc LEFT JOIN haskacutyun chka
ka INNER JOIN
LEFT OUTER JOIN
RIGHT OUTER JOIN
u senc
Vonc LEFT JOIN chka? Esor aravot@ hla kar...
__________________
Ленинградское время 0 часов 0 минут
Griffon2-7 is offline   Reply With Quote Quote selected
Old May 26, 2005, 04:48   #12
Академик
 
Join Date: Jan 2002
Location: Shambala
Posts: 6,801
Rep Power: 8
Reputation: 190
Send a message via ICQ to Երեխա
Griffon jan yerb du grum es LEFT JOIN MS SQL Serverum ed avtomat kaxvac zaprosic darnuma kam Inner kam Outer
patrza?
porci haamr gri Informix i DB erum LEFT JOIN tes inch kasi
__________________
Ախպեր դու էմիգրացիան տուրիզմի հետ մի խառնի...

http://moskull.livejournal.com/
Երեխա is offline   Reply With Quote Quote selected
Old May 26, 2005, 09:03   #13
В бой аргхххххххх!
 
hov's Avatar
 
Join Date: Sep 2002
Location: Vik, Medieval Norway
Posts: 1,491
Rep Power: 7
Reputation: 48
Send a message via ICQ to hov
Спасибо за исчерпывающие ответы

P.S.
Вот еще бы линк на книжку Дейта
hov is offline   Reply With Quote Quote selected
Old May 26, 2005, 13:41   #14
инсценирующий жизнь
 
[ Xelgen ]'s Avatar
 
Join Date: Jul 2002
Location: Fireplace of Ecotopia
Posts: 4,165
Rep Power: 7
Reputation: 64
Send a message via ICQ to [ Xelgen ] Send a message via Skype™ to [ Xelgen ]
Quote:
Originally Posted by hov
Спасибо за исчерпывающие ответы

P.S.
Вот еще бы линк на книжку Дейта
В электронном варианте, я ее так и не нашел.
__________________
...ибо...
Rgrdz. [ Кселджэн ]
[ Xelgen ] is offline   Reply With Quote Quote selected
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
A Hellish Question from Wash. Univ. bvahan Science and Education 2 May 1, 2005 09:02
MS SQL RAM problem armen13 Languages, Compilers and Interpreters 6 Jan 12, 2005 10:19
The Armenian Question and Greek policy dikranjohn News 0 Sep 23, 2004 20:29
Sql Collation Problem Masud Languages, Compilers and Interpreters 13 Mar 21, 2004 05:08
SQL Question hov Languages, Compilers and Interpreters 4 Sep 30, 2002 19:49


All times are GMT. The time now is 03:05.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
This board was founded on September 29, 2001
Powered by Viper Internet

Affordable Web Hosting | ParevNet

Buy text link