SQL查询2个字段相同,一个字段不同
时间: 2024-05-06 12:19:09 浏览: 11
假设你有一个表 `table1`,其中有三个字段:`col1`、`col2` 和 `col3`。如果你想查询 `col1` 和 `col2` 相同,但 `col3` 不同的所有行,你可以使用以下 SQL 查询语句:
```sql
SELECT *
FROM table1
WHERE col1 = col2 AND col1 <> col3;
```
这将返回 `table1` 表中 `col1` 和 `col2` 相同,但 `col3` 不同的所有行。
相关问题
查询一个字段相同另一个字段不同的sql语句
可以使用以下 SQL 语句查询一个字段相同另一个字段不同的记录:
```
SELECT *
FROM table_name
WHERE column1 = column2 AND column1 <> column3;
```
其中,`table_name` 是要查询的表名,`column1` 是要比较的字段,`column2` 是与 `column1` 相同的字段,`column3` 是与 `column1` 不同的字段。`<>` 表示不等于的运算符。
sql查询某2个字段相同的所有值
要查询某两个字段相同的所有值,可以使用SQL中的自连接和条件语句来实现。
首先,假设有一张名为"表名"的表,其中包含两个字段"字段1"和"字段2"。要查询这两个字段相同的所有值,可以使用以下SQL语句:
```
SELECT t1.字段1, t1.字段2
FROM 表名 t1, 表名 t2
WHERE t1.字段1 = t2.字段1
AND t1.字段2 = t2.字段2
AND t1.字段1 <> '' -- 可选条件,如果只想查找非空的相同值
```
以上的查询语句中,通过表的自连接,将同一张表拆分成两个别名为t1和t2的表。然后通过比较t1和t2的字段1和字段2的值,筛选出相同的记录。如果想要查询非空的相同值,可以添加额外的条件"`t1.字段1 <> ''`"。
执行以上SQL查询语句后,将会返回所有字段1和字段2相同的记录。