场景是我有两个表,我想使用PHP的搜索函数查询它们。有两个表,table_a和table_ab。table_a中有id、name、middle_auname、姓氏、case_auno columns和table_ab相似。表b中的数据都是从另一个源导入的,而表a中的数据是由用户手动插入的。有一些实例表明表a和表b中有重复的数据。我想要的是从表b中删除重复的数据。假设表a中有一列具有空值,我想要的是从结果中排除该列。
+----------+----------+----------+ +----------+----------+----------+
| name | surname | case_num | | name | surname | case_num |
+----------+----------+----------+ +----------+----------+----------+
| john | wick | 1434 | | john | wick | null |
+----------+----------+----------+ +----------+----------+----------+
table_a table_b
+----------+----------+----------+
| name | surname | case_num |
+----------+----------+----------+
| john | wick | 1434 |
+----------+----------+----------+
| john | wick | null |
+----------+----------+----------+
现在我要查询这个表,只显示没有空值的结果
+----------+----------+----------+
| john | wick | 1434 |
+----------+----------+----------+
+----------+----------+----------+
| john | wick | null |
+----------+----------+----------+
但第一个问题是从结果中排除具有空值的行。这是我的问题。
SELECT * FROM created_view_table WHERE name LIKE ? OR surname LIKE ? OR case_num LIKE ? AND
case_num <> null;
SELECT * FROM created_view_table WHERE name LIKE ? OR surname LIKE ? OR case_num LIKE ? AND
case_num IS NOT null;
每当我搜索'%john%'时,它总是同时显示这两行,一行包含空值的列,另一行不包含空值的列。如果可能的话,我只想显示没有空值的结果。