如何比较同一个表中的两列?

时间:2012-06-28 13:11:54

标签: sql

我想比较同一个表中的两列。我希望能够返回两列具有相同值的所有行。

我正在寻找类似SELECT * FROM FOO WHERE C1 = C4的内容。

因此,在下面的例子中,我只返回第一行:

C1    || C2  || C3  || C4
--------------------------
1     || a   || b   || 1
2     || a   || b   || 4
3     || b   || d   || 2
4     || b   || d   || 2

如果重要,我正在使用SQLite(更具体地说是WebSQL)。

1 个答案:

答案 0 :(得分:15)

SELECT * FROM FOO WHERE C1 = C4应该有效。不是吗?

如果没有,它们的数据类型和长度是否相同?您可能需要转换。

我不知道WebSql,但是我看到一些db系统拒绝匹配,如果一个是varchar(5)而另一个是varchar(10),即使它们保持相同的值。 在这些系统中,您必须使用类似

的内容
 Convert(varchar, 10, FieldName)

获得比赛。