我在mysql中有一个有80列的表。这些列中大多数没有值,为null。通常,每行返回大约8或9个非空列(数据已被插入)。我相信mysql语句中没有办法从获取的行返回非空的列。我的问题是,由于我是Python的初学者,在这个脚本中实现我的目标的最佳方法是什么?更好的解释是:
A mysql查询获取一行如果第一列不为空,则显示列名和列数据</>如果第二列不为空,则显示列名和列数据6,如果第三列不为.等等,直到最后一列
谢谢你在这方面的帮助。
在MySQL中,我有一个触发器:
BEGIN
IF (EXISTS(SELECT * FROM devices WHERE device_id = NEW.device_id)) THEN
SET NEW.id = NULL;
ELSE
INSERT INTO objects (object_type) VALUES ('3');
SET NEW.id = LAST_INSERT_ID();
END IF;
END
当该触发器(从objects表)获得新的id时,它会将该id插入到设备表的id列中。
当我提到它(例如PHP中的mysql_insert_
我在Linux (x86_64)中使用14.14 distrige5.7.40。我已经创建了一个包含3列的表,并且这些列具有非空约束集。然后,当我试图将空值直接插入到表中时,它会给出一个错误,说明该列不能为空。但是,如果我尝试使用select语句插入null值,那么MYSQL将插入一个新记录,并且只显示一个警告。在插入的记录中,我看到MYSQL已经用空字符串替换了NULL。
DROP TABLE IF EXISTS table1;
DROP TABLE IF EXISTS table2;
CREATE TABLE IF NOT EXISTS table1 (
id INT UN