1

Тема: Проклятий inner join робити мене злитись!!!

Хаіі. Є два стільця дві таблички. Перша табличка має ім'я "char_t" та таку структуру
http://puu.sh/66ONR.png
А друга табличка - "coor_t"
http://puu.sh/66OQq.png
Запит має робити от що. Витягаємо id та nick з таблички char_t де user_id = деякому числу, та підтягуємо значення полей x, y та z з таблички coor_t при вимозі, що id з таблички char_t = id з таблички coor_t
Ну я такий запит написав, але він не працює, постійно якусь дурню про невірний синтаксис видає мені phpmyadmin!!! =(((

select ch.id as "char id",ch.nick as "char nick", 
cr.x as x, cr.y as y, cr.z as z from char_t as ch
 where ch.user_id=2 inner join coor_t as cr on ch.id=cr.id

що ж не так??? єдрить його за ногу!

All you want is a dingle,
What you envy's a schwang,
A thing through which you can tinkle,
Or play with, or simply let hang...

2 Востаннє редагувалося koala (02.01.2014 20:13:42)

Re: Проклятий inner join робити мене злитись!!!

Я перепрошую, а що ви join-аєте? Який лівий аргумент оператора inner join? Я, може, помиляюся, але хіба можна join-ати не таблиці?

Подякували: FakiNyan1

3 Востаннє редагувалося FakiNyan (02.01.2014 20:21:01)

Re: Проклятий inner join робити мене злитись!!!

koala написав:

Я перепрошую, а що ви join-аєте? Який лівий аргумент оператора inner join? Я, може, помиляюся, але хіба можна join-ати не таблиці?

дивовижним чином ваше питання наткнуло мене на деяку думку і я оте написав все вірно, здається

select ch.id as "char id",ch.nick as "char nick", 
cr.x as x, cr.y as y, cr.z as z from char_t as ch
inner join coor_t as cr on ch.id=cr.id and ch.user_id=2

я от подумав, якщо ви кажете, що лівий аргумент має бути, то з умовою "where" його ж може і не бути, але синтаксис вимагає, щоб був. але ви вже написали, що просто тре щоб там таблиця була, одже я не вірнo подумав... =(((

All you want is a dingle,
What you envy's a schwang,
A thing through which you can tinkle,
Or play with, or simply let hang...

4

Re: Проклятий inner join робити мене злитись!!!

select ch.id as "char id",ch.nick as "char nick", 
cr.x as x, cr.y as y, cr.z as z from char_t as ch
 inner join coor_t as cr on ch.id=cr.id where ch.user_id=2 
Подякували: FakiNyan1

5 Востаннє редагувалося koala (02.01.2014 20:49:35)

Re: Проклятий inner join робити мене злитись!!!

FakiNyan написав:

одже я не вірнo подумав... =(((

Я теж, не переживайте. Згідно з http://dev.mysql.com/doc/refman/5.0/en/join.html, можна підзапити join-ати - але це мають бути повні підзапити, від select до where.

6

Re: Проклятий inner join робити мене злитись!!!

muroclav, правильно написав, where має йти після всіх join

Подякували: Bartash1

7

Re: Проклятий inner join робити мене злитись!!!

koala написав:
FakiNyan написав:

одже я не вірнo подумав... =(((

Я теж, не переживайте. Згідно з http://dev.mysql.com/doc/refman/5.0/en/join.html, можна підзапити join-ати - але це мають бути повні підзапити, від select до where.

а, ну окєй тоді, якщо так, то нехай буде вже так.

All you want is a dingle,
What you envy's a schwang,
A thing through which you can tinkle,
Or play with, or simply let hang...