Php 选中select查询中的两个字段
我有一个名为“members”的mysql表 成员|成员id、用户名、电子邮件、密码、域名 电子邮件字段不能为空,但域名可以为空 在这里,我想进行Php 选中select查询中的两个字段,php,mysql,Php,Mysql,我有一个名为“members”的mysql表 成员|成员id、用户名、电子邮件、密码、域名 电子邮件字段不能为空,但域名可以为空 在这里,我想进行选择查询,以获取用户名、电子邮件或域名。如果存在特定成员id的域名,则我不需要选择电子邮件。如果没有,我需要收到电子邮件 这是我目前正在使用的查询。但它同时选择了电子邮件和域名 SELECT email, username, domain_name FROM members ORDER BY username DESC; 有人能帮我更新这个sel
选择查询,以获取用户名、电子邮件或域名。如果存在特定成员id的域名,则我不需要选择电子邮件。如果没有,我需要收到电子邮件
这是我目前正在使用的查询。但它同时选择了电子邮件和域名
SELECT email, username, domain_name
FROM members
ORDER BY username DESC;
有人能帮我更新这个select查询吗?
多谢各位 您可以使用案例
SELECT
username,
CASE
WHEN domain_name IS NULL
THEN email
ELSE domain_name
END your_alias
FROM
members
ORDER BY username DESC ;
您的别名可以是您想要指定为列的任何名称它可以是电子邮件或域名您可以使用案例
SELECT
username,
CASE
WHEN domain_name IS NULL
THEN email
ELSE domain_name
END your_alias
FROM
members
ORDER BY username DESC ;
您的别名可以是您想要指定为列的任何名称它可以是电子邮件或域名您可以在中使用IF功能
MySQL IF函数的语法为:
IF(expr,IF\u true\u expr,IF\u false\u expr)
您可以在中使用IF功能
MySQL IF函数的语法为:
IF(expr,IF\u true\u expr,IF\u false\u expr)
人们通常在这方面有困难,所以我会抛出一个助手,your\u alias
实际上是迭代此查询时要使用的列的名称$row['your_alias']
。人们在这方面通常会遇到麻烦,因此我会抛出一个助手,your_alias
实际上是您迭代此查询时将使用的列的名称$row['your_alias']
。我不知道您的情况,但我建议在服务器端代码中使用逻辑。@Samosa是的,此逻辑可以在服务器端代码中使用。但如果我在sql查询中使用此逻辑有什么不同呢?原因有很多:-请阅读。。IMHO易变的业务逻辑应该通过服务器端完成。我不知道您的情况,但我建议在服务器端代码中使用逻辑。@Samosa是的,此逻辑可以在服务器端代码中使用。但如果我在sql查询中使用此逻辑有什么不同呢?原因有很多:-请阅读。。IMHO易变的业务逻辑应该通过服务器端完成。