2016-06-22 1 views
1

Выполнение этого запроса SQL в MySQL:1064 - У Вас есть ошибка в вашем SQL синтаксиса (...) рядом с ''

INSERT INTO Test_id_isbnyear  
    SELECT I.id, I.isbn, Y.year  
    FROM Prod_id_isbn AS I  
    LEFT JOIN Prod_id_year AS Y ; 

Бросьте эту ошибку:

1064 - You have an error in your SQL syntax (...) near '' at line 4

Как я могу получить ошибка о «"», если нет такой вещи в моем запросе?

+5

ли не то, что 'JOIN' нужен' ON' положение? – David

+1

Омг Давид, большое вам спасибо - вы спасли мне пару седых волос. Кроме того, мне сейчас немного стыдно. – lisbeth

ответ

0

По общему признанию, сообщение об ошибке не super полезно в этом случае. Могут быть исключения из правила, но по моему опыту это обычно означает, что синтаксическая ошибка находится в самом конце запроса. Что, в данном случае, это:

SELECT I.id, I.isbn, Y.year  
FROM Prod_id_isbn AS I  
LEFT JOIN Prod_id_year AS Y 
-- missing "ON" clause 

Должно быть что-то вроде:

SELECT I.id, I.isbn, Y.year  
FROM Prod_id_isbn AS I  
LEFT JOIN Prod_id_year AS Y 
    ON I.SomeField = Y.SomeField 
0

Вы должны присоединиться к вашей ценности на что-то (я предположил, что ON I.ID = Y.I_ID за этот ответ).

INSERT INTO Test_id_isbnyear  
SELECT I.id, I.isbn, Y.year  
FROM Prod_id_isbn I  
LEFT JOIN Prod_id_year Y ON I.ID = Y.I_ID; 
+0

Привет, Мэтт, большое спасибо за ваш ответ. Я был смущен сообщением об ошибке и смотрел в неправильном направлении для решения. – lisbeth

Смежные вопросы