我有两个表,第一个有4列,如:
ID
NAME
COUNTRY
FILTERID
,第二个列有两列,如:
ID
COUNTRY
我想使用此查询:
SELECT F.Name
FROM First as F, Second AS S
WHERE F.Filterid = S.S_Id
AND F.Country = S.Country
S.Country
包含Japan,Usa
,但F.Country
仅包含Japan
。
请建议解决方案。
答案 0 :(得分:0)
为此,您必须编写JOIN
查询,因为您希望从两个表中获取项目....
你可以使用喜欢,
SELECT F.Name FROM First F JOIN Second S ON F.Country=S.Country
答案 1 :(得分:0)
如果使用sql,可以使用JOINS 对于例如 从table_one中选择*作为一个 INNER JOIN(在连接表格以供参考here之前,您必须知道不同的连接目的) table_two为两个 ON one.some_value_of_column_in_table_one = two.some_value_of_column_in_table_two 感谢。
答案 2 :(得分:0)
如果一个国家/地区字段是另一个国家/地区的子字符串,请使用INSTR
function:
SELECT F.Name FROM First AS F, Second AS S WHERE F.Filterid=S.id AND INSTR(S.Country, F.Country) > 0
如果在F.Country
内发生S.Country
,则会返回记录(显然,如果是F.Filterid=S.id
,则会返回原始SQL)。
或者您也可以将其构建为JOIN:
SELECT F.Name FROM First AS F JOIN Second AS S ON F.Filterid=S.id AND INSTR(S.Country, F.Country) > 0