SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 19.08.2008 13:51:24

freelancer89
Завсегдатай
Зарегистрирован: 31.07.2008
Сообщений: 28

помогите составить запрос

суть такая 3 таюлицы
1- USERS в ней поля имя,фамилия,логин
2-computers в ней поля: ин компа, IP, имя, логин_юзера(он равен логину из первой)
3-hard в ней содержатся поля процессор и прочее и ИН компа из таблицы 2. тапкрь вопрос
мне надо как-то по логину пользователя узнать какие комплектующие у него в машине! пробовал подзапросом, но не работает. Помогите кто может!

Неактивен

 

#2 19.08.2008 15:16:12

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6756

Re: помогите составить запрос

SELECT * FROM
hardware h
JOIN computers c ON h.computer = c.id
JOIN users u ON u.computer = c.id
WHERE u.name = 'name';

Неактивен

 

#3 22.08.2008 11:25:24

freelancer89
Завсегдатай
Зарегистрирован: 31.07.2008
Сообщений: 28

Re: помогите составить запрос

Еще у меня есть такая вот петрушка
$result= mysql_query("select * from computers  JOIN USERS ON computers.user_login=USERS.LOGIN RIGHT JOIN Organization ON USERS.organization=Organization.name")
    or die(mysql_error());
т.е. необходимо выводить все ИН компов каждоко рабочего в выбранной фирме, но почемуто выводятся все подряд, в чем ошибка, подскажите...

Неактивен

 

#4 22.08.2008 13:04:25

Sign
Гуру
Зарегистрирован: 26.06.2008
Сообщений: 43

Re: помогите составить запрос

Что бы ограничить вывод надо задать это ограничение

SELECT *
FROM computers c
    JOIN USERS u ON c.user_login = u.LOGIN
WHERE u.organization = "Organization name"

Хотя было бы лучше использовать id организаций и id пользователей:
SELECT c.*, u.*
FROM computers c
    JOIN USERS u ON c.user_id = u.id
WHERE u.organization_id = 123;

Неактивен

 

#5 26.08.2008 12:13:59

freelancer89
Завсегдатай
Зарегистрирован: 31.07.2008
Сообщений: 28

Re: помогите составить запрос

а вот еще есть такая штука
$i=1;
    do
    {
    $result = mysql_query("Insert into PPO(`organization`,`user_login`,`in_of_computer`,`NAME OF     PPO`,`PROIZVODITEL`) values ('{$_POST[sw]}','{$_POST[login]}','{$_POST[inumber]}','{$_POST[ppo$i]}','{$_POST[ppop$i]}')") or die(mysql_error());$i++;
    }
while ($_POST[ppo$i]="undefine" AND $_POST[ppop$i]="undefine");

ошибку выдает...как мне в цикле записать $_POST[ppo$i] и _POST[ppop$i]?

Неактивен

 

#6 26.08.2008 16:54:17

Sign
Гуру
Зарегистрирован: 26.06.2008
Сообщений: 43

Re: помогите составить запрос

Вы проверяете условие уже после выполнения запроса

Неактивен

 

#7 27.08.2008 12:47:46

freelancer89
Завсегдатай
Зарегистрирован: 31.07.2008
Сообщений: 28

Re: помогите составить запрос

а вот еще проблемка...был скрипт работал нормально, добавил пару запросов и стала вылетать ошибка

Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in Z:\home\localhost\www\pop\addusers.php5 on line 80

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in Z:\home\localhost\www\pop\addusers.php5 on line 80
Access denied for user 'ODBC'@'localhost' (using password: NO)

что бы это могло значить?

Неактивен

 

#8 27.08.2008 12:49:09

freelancer89
Завсегдатай
Зарегистрирован: 31.07.2008
Сообщений: 28

Re: помогите составить запрос

отбой тревоги, я закрыд базу и пытаюсь выполнить запрос

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson