【理解NULL如何影响IN和EXITS语句_MySQL】教程文章相关的互联网学习教程文章

在MYSQL中执行LEFT OUTER JOIN时插入零而不是NULL【代码】

有没有办法在两个表上执行LEFT OUTER JOIN时插入零而不是NULL? 假设我有这样的查询:SELECT * FROM (SELECT uID from Class) T1 LEFT OUTER JOIN (SELECT pID from University) T2 ON T1.uID = T2.pID CASE WHEN T1.uID IS NULLTHEN 0 ELSE T1.uID END AS uID`如果我错了纠正我解决方法: CASE WHEN a.fieldname IS NULL THEN 0ELSE a.fieldname END AS fieldname

MySQL列设置为NOT NULL但仍允许NULL值【代码】

我将每列设置为NOT NULL但由于某种原因,我仍然可以在每列中添加NULL值.这是我的表信息(创建语法):CREATE TABLE `addresses` (`id` int(11) NOT NULL AUTO_INCREMENT,`address` varchar(100) NOT NULL,`city` varchar(100) NOT NULL,`state` varchar(4) NOT NULL,`zip` varchar(30) NOT NULL,PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=4545 DEFAULT CHARSET=utf8;这是一个有效的INSERT示例:INSERT INTO `addresses` (`s...

最好在MySQL中使用零日期’0000-00-00 00:00:00’或NULL?

在MySQL数据库上使用默认日期’0000-00-00 00:00:00’或NULL是一种更好的做法吗? 出于计算的原因,我已经阅读了最好使用默认日期’0000-00-00 00:00:00′ 即>比小于日期的日期. 如果时间不明,也准时存储00:00或NULL.解决方法:默认值应为NOT NULL以支持所有日期时间操作.我也使用“0000-00-00 00:00:00”作为默认值.

理解MySQL中的SUM(NULL)【代码】

通常当任何等式中涉及NULL时,整个结果都会解析为NULL(例如SELECT 2 NULL 5返回NULL) 同样适用于以下情况: SELECT SUM(NULL)返回NULL.命题#1 当SUM用于聚合列并且列也可以包含NULL值时会发生什么? 基于命题#1,为什么输出不会导致NULL.CREATE TABLE t (age INT NULL);INSERT INTO t (age) VALUES (15),(20), (NULL), (30), (35);SELECT SUM(age) FROM t;输出:100 但我期待NULL. 在这种情况下,MySQL是否会以静默方式跳过这些NULL...

在MYSQL列创建中,NULL vs DEFAULT NULL vs NULL DEFAULT NULL?【代码】

下面的sql表定义说明了我的MYSQL数据库中的create table语句之一,该数据库是由我公司的前开发人员开发的.DROP TABLE IF EXISTS `classifieds`.`category_vehicles`; CREATE TABLE `classifieds`.`category_vehicles`( `adv_id_ref` BIGINT UNSIGNED NOT NULL, `category_id_ref` TINYINT UNSIGNED NOT NULL, `forsale_status` TINYINT (1) NOT NULL, `vehicle_type_id_ref` TINYINT UNSIGNED NOT NULL, `price` DOUBLE NULL DEFAUL...

在MySQL中向主键字段添加NOT NULL有什么意义?【代码】

将NOT NULL添加到主键字段有什么意义?主键已经不是唯一的null. 这是一个例子:CREATE TABLE student (id int(11) AUTO_INCREMENT NOT NULL,name varchar(255),PRIMARY KEY(id) )为什么不这样定义它:CREATE TABLE student (id int(11) AUTO_INCREMENT,name varchar(255),PRIMARY KEY(id) )解决方法:他们是一样的.主键自动获得NOT NULL.

mysql – SQL中的Null,Zero和Blank有什么区别?

有人可以解释一下吗?解决方法:零是一个数值.它具有精确的数学特性. (你可以对它进行算术……) NULL表示没有任何值.除了测试之外,你无法做任何事情. 空白是不明确的.它意味着在不同的环境中对不同的人有不同的东西.例如: >有人可能意味着一个零长度的字符串值:即一个没有字符的字符串值(”).>某人可能意味着一个非零长度的字符串值,仅包含非打印字符(SPACE,TAB等).或者可能只包含一个SPACE字符.>在某些情况下(字符和字符串是不同...

mysql – 选择条目不为null的列名【代码】

我想有一个表的列的列表,其中至少有一个非NULL数据条目. 换句话说,我想获取以下列返回至少一个条目的列名:SELECT DISTINCT column_name FROM table WHERE column_name IS NOT NULL我尝试了以下方法:SELECT column_name FROM information_schema.columns WHERE table_name = "table_name" AND EXISTS (SELECT DISTINCT column_name FROM table_name WHERE column_name IS NOT NULL )但是这也会返回所有条目都为NULL的列名. 那么我...

mysql – #1366 – 不正确的整数值:第1行的列’cid’为’NULL’【代码】

我已经使用XAMPP在My??BB本地安装了它并且顺利进行.但是当我在服务器上执行它时,它会给我错误. MyBB自己创建并插入大量数据,我发现错误在以下查询中:INSERT INTO... VALUES ('NULL', ...)在我的localhost MySQL(两者都是5.5.27)接受这种查询,其中’NULL’作为String传递.但是在服务器中,标题显示错误#1366. 问题是更改查询不是一个选项,因为它是很多查询,所以任何人都知道我可以在哪里配置它工作? 提前致谢.解决方法:问题是对于M...

mysql – LOAD_FILE返回NULL【代码】

我试图将图像插入我的MySQL服务器.我做了一些研究,看起来最好的方法是通过LOAD_FILE().但是,LOAD_FILE()始终返回null.我知道LOAD_FILE()有4个条件: >该文件必须位于服务器主机上>您必须指定文件的完整路径名,并且您必须具有FILE权限.>该文件必须可由所有人读取,并且其大小小于max_allowed_pa??cket字节.>如果secure_file_priv系统变量设置为非空目录名,则要加载的文件必须位于该目录中. 我目前正在使用:select LOAD_FILE('/Users...

带有DEFAULT NULL的MySQL列 – 样式选择,还是它?【代码】

在许多SQL版本中,有三种方法可以在每次插入行时将列隐式设置为NULL.这些是:columnname type NULL columnname type DEFAULT NULL columnname type NULL DEFAULT NULL即第一个设置NULL标志(而不是NOT NULL),第二个将NULL标志保留为默认值,第三个设置NULL标志并将隐式值设置为NULL. 我听说过在Microsoft SQL中,第二种变体并不完全相同,因为您还可以自定义表或模式的NULL标志的默认值. 但对于MySQL,我不相信有这样的功能.此外,在MySQL...

奇怪的MySQL AVG()异常NULL值【代码】

我在做什么 :create table sample (id INT(10) PRIMARY KEY AUTO_INCREMENT,name varchar(255),marks INT(10));insert into sample (name,marks) VALUES('sam',10); insert into sample (name,marks) VALUES('sam',20); insert into sample (name,marks) VALUES('sam',NULL); insert into sample (name,marks) VALUES('sam',NULL); insert into sample (name,marks) VALUES('sam',30);select AVG(marks) from sample GROUP BY(nam...

php – mysqli_error()期望参数1为mysqli,null给定【代码】

我有一个从数据库中提取数据的表单(mysql是特定的),并将数据回显到< input>的值部分.标签.它似乎没有工作我编写了我的网站的视图部分来做同样的事情,但从我的数据库中的不同表.我使用相同的代码轻松进行更改,如果其他开发人员将来在我的网站上工作.无论如何它似乎没有工作我不知道为什么. 我得到的完整错误:Warning: mysqli_query() expects parameter 1 to be mysqli, null given in /home/caseol5/public_html/jj/admin/news_up...

mysql – where子句中的NULL值【代码】

我有一张像这样的桌子“bla”:[id] [name] [fk] 1 test 4 2 foo 5 3 bar NULL如果我做的SQL查询SELECT * FROM bla WHERE fk <> 4我只得到id为2的记录.我没有得到id为3的记录,其中fk为null.我以为是NULL!= 4.似乎这是错误的. 为什么会这样?解决方法:NULL不会比较等于任何东西.您需要显式接受空值:where fk <> 4 or fk is null;有关NULL处理的更多信息,请参见Working with NULL.

php – 如何检查MySQL是否返回null / empty?【代码】

在DB中,我有一个表格,其中包含一个名为fk_ownerID的字段.默认情况下,当我添加新表行时,fk_ownerID为空.在Toad for MySQL中,这显示为{null}.如果给fk_ownerID一个值,后来我删除了这个值,我设置fk_ownerID =“”. 现在,我有以下代码:$result = $dal->getRowByValue('tableName','id', $_POST['myID']);// Check to see if any rows where returned if (mysql_num_rows($result) > 0) {while ($row = mysql_fetch_array($result)){$o...