Ошибка в синтаксисе внутреннего объединения SQL - PullRequest
0 голосов
/ 22 января 2012

Я использую php для объединения двух таблиц, одна из которых содержит пробел в имени поля.

Я пытался добавить обратные тики, обычные тики, но я все еще получаю ошибки и кодне будет работать.

Я не могу понять, в чем моя ошибка, пожалуйста, помогите.

SELECT products.wholesalecost, vendor units.amount
FROM `products`
INNER JOIN `vendor units` ON products.productid=vendor units.productid
WHERE vendor units.vorderid=".$row["vorderid"]."

Ответы [ 3 ]

3 голосов
/ 22 января 2012

Вы должны использовать обратные метки для каждого вхождения имени таблицы с пробелом,

SELECT products.wholesalecost, `vendor units`.amount
FROM `products`
INNER JOIN `vendor units` ON products.productid=`vendor units`.productid
WHERE `vendor units`.vorderid=".$row["vorderid"]."

или используйте для него псевдоним

SELECT products.wholesalecost, vu.amount
FROM `products`
INNER JOIN `vendor units` vu ON products.productid=vu.productid
WHERE vu.vorderid=".$row["vorderid"]."
2 голосов
/ 22 января 2012

Попробуйте:

SELECT `products`.`wholesalecost`, `vendor units`.`amount` ...
ON `products`.`productid` = `vendor units`.`productid`
0 голосов
/ 22 января 2012

Кажется, у вас здесь есть пробел: "единицы вендора".

...