也许我很愚蠢,也许我是瞎子,但我只是Swift开发人员试图处理MySQL的某些方面。
我有一个包含多个列的简单表:
@media print
因此,唯一的列'年龄'可能是id INT NOT NULL
name VARCHAR NOT NULL
age INT ALLOW NULL
domain VARCHAR NOT NULL
。当我NULL
时,我会根据“年龄”值收到SELECT *
或(id, name, domain)
。
即使年龄为(id, name, age, domain)
,如何才能获得所有4列?所以它可能类似于:NULL
或(453, John, NULL, johnDoe)
。
要访问MySQL服务器,我使用Swift Perfect的原生MySQL框架。
编辑: 让我的表也有这些列:
(453, John, 37, johnDoe)
因此,如果我获取数据,它可能是7个值(如果一切都已设置)或6个值(如果未设置smth),那么如何知道设置什么和不设置什么?
答案 0 :(得分:0)
您可以使用简单查询来获取所有四列的结果。如果“age”列不包含任何值,则它将返回“null”,否则所有列的值将在输出中。
SELECT id, name, age, domain FROM TABLE_NAME;
答案 1 :(得分:0)
如果您可以使用默认值,例如-1(或0或其他),则可以使用coalesce(age, -1)
来获取该值而不是null。
select id, name, coalesce(age, -1) age, domain from t;
并在您的应用程序中正确处理-1
年龄。