Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/135.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySql上的ISNULL与排序规则latin_swedish_ci和utf8_general_ci的工作方式是否不同_Mysql_Mariadb_Collation - Fatal编程技术网

MySql上的ISNULL与排序规则latin_swedish_ci和utf8_general_ci的工作方式是否不同

MySql上的ISNULL与排序规则latin_swedish_ci和utf8_general_ci的工作方式是否不同,mysql,mariadb,collation,Mysql,Mariadb,Collation,我在MariaDB上有两个数据库,InnoDB作为引擎,两个数据库都有latin\u swedish\u ci作为排序规则,但一个数据库有latin\u swedish\u ci作为表排序规则,另一个数据库有utf8\u general\u ci作为表排序规则,当我在数据库上执行以下查询时: SELECT `ct`.`name` FROM `csv_temp` as `ct` left join `trans_recs` as `tr` on `ct`.`name` = `tr`.`name

我在MariaDB上有两个数据库,InnoDB作为引擎,两个数据库都有
latin\u swedish\u ci
作为排序规则,但一个数据库有
latin\u swedish\u ci
作为表排序规则,另一个数据库有
utf8\u general\u ci
作为表排序规则,当我在数据库上执行以下查询时:

SELECT `ct`.`name` 
FROM `csv_temp` as `ct` 
left join `trans_recs` as `tr` on `ct`.`name` = `tr`.`name` 
where `tr`.`name` is null and `ct`.`fk_project_id` = 1
我使用
拉丁语瑞典语ci
排序在DB和table上得到了正确的结果,但是使用
拉丁语瑞典语ci
utf8\u general\u ci
在DB和table上得到了空集

他的行为有什么解释吗。提前谢谢

MySql上的ISNULL与排序规则latin_swedish_ci和utf8_general_ci的工作方式是否不同

事实并非如此
ISNULL
将在单元格为空时工作

我在DB和table上都得到了正确的结果,都是使用拉丁语瑞典语ci排序规则,但在DB上使用拉丁语瑞典语ci和table上使用utf8通用词ci得到了空集


默认值可能是空字符串,而不是排序规则为拉丁文瑞典文ci的空字符串。如果列为NULL,则它没有内容。所以no-isnull是排序规则independend@juergend谢谢你的信息,非常感谢。但我关心的是,为什么查询在DB和table上都使用拉丁语瑞典语ci排序,而在DB和table上都使用拉丁语瑞典语ci排序,而在table上使用空集,而在table上使用utf8\U general\ci排序。所以,
NULL
是一种误导?请为两个表中的每个表提供
SHOW CREATE TABLE
。这也许能回答你的问题。如果没有,我们将有更多的合作。