我在另一列中找到一列时遇到问题。我有这段代码:
SELECT company.name
FROM company, person
WHERE company.name not like '%'+person.sirname+'%'
有两个表,名称为
的公司Company of mr. Black
和列 - sirname的人
Black
但是当我运行此代码时,它会成为错误“无效数字”
答案 0 :(得分:2)
我认为你正试图加入这两张桌子。尝试使用明确的JOIN
语法,如下所示:
SELECT company.name
FROM company
INNER JOIN person ON company.name not like '%'+person.sirname+'%'
答案 1 :(得分:2)
字符串需要与||连接operator(你可能需要一个JOIN条件):
SELECT company.name
FROM company, person
WHERE company.name not like '%' || person.sirname || '%'
AND person.company_id = company.id
如果您使用+运算符,数据库会尝试将名称转换为数字,并且您会收到错误无效数字。
答案 2 :(得分:1)
我认为你应该使用内部联接的最好的事情不是为了得到也使用ID我想这可以帮助如果我没有得到错误的问题