2012-03-18 52 views
0

我正在使用sql ...我有一个表名为Table1的2列:column1和column2。首先,我需要选择列1包含“安德鲁”或“布兰登”的两列。然后我想在column2中进行比较,并返回与column2中的字段类似的字符串的结果。如何在字段相似的一列中进行选择

column1 column2 
andrew hi 
brandon hello 
andrew hello 
carl hi 

回报:

brandon hello 
andrew hello 
+1

第二部分不是很清楚。你能详细说明吗?到目前为止,我看到你需要column2的值,这是“andrew”和“brandon”常用的值。你还使用哪个数据库? – 2012-03-18 08:19:26

+0

我正在使用sqlite3我认为。 – user1050548 2012-03-18 09:01:09

回答

1

既然要比较两行,你真的不能脱身没有JOIN或子查询。如果我理解正确,这应该在“任何数据库”SQL中做你想做的事情;

SELECT t1a.* 
FROM Table1 t1a 
JOIN Table1 t1b 
    ON t1a.column2 = t1b.column2 AND t1a.column1 <> t1b.column1 
WHERE t1a.column1 in ('andrew', 'brandon') AND 
     t1b.column1 IN ('andrew', 'brandon'); 

演示here

0

尝试用下面的查询:

SELECT column1+' '+ column2 from Table1 where column1 IN ('andrew','brandon') 
相关问题