mysql - mysql 在开关构造中使用替代名称
问题描述
我尝试使用下面的代码进行选择
Select `admin`.`admin_id`, `admin`.`email` AS `admin_email`, IF(customer.email IS NOT NULL OR admin_email IS NOT NULL, 'Subscribed', 'Unsubscribed') AS `field_name`, (...Something else) from admin, customer, (...Something else);
然后得到错误#1054 - Unknown column 'admin_email' in 'field list'
解决方案
你不能在 if 语句中使用别名,所以
选择admin
。admin_id
, admin
. email
AS admin_email
, IF(customer.email IS NOT NULL OR admin.email IS NOT NULL, 'Subscribed', 'Unsubscribed') AS field_name
, (...Something else) from admin, customer, (...Something else);
推荐阅读
- node-sqlite3 - “返回”(节点)附近的 SQLite 语法错误
- reactjs - 使用 /authorize 和 /oauth/token 端点进行身份验证以访问自定义 Api 后获取访问令牌的正确方法是什么
- sql - 查询结果在 Oracle SQL 中的查询标头
- amazon-web-services - S3 静态托管网页找不到子文件夹内容
- jvm - Vert.x httpClient/webClient 逐块或作为流处理响应
- javascript - 无效电子邮件的正则表达式
- javascript - Quasar 2.2.2、Vue 3 和 Firebase:如何从路由器访问 GlobalProperties
- reactjs - 如何在 React 自定义元素中为 MUI 材料 v5 创建插入点以在阴影 dom 中安装样式
- python - 如何安全地在 dict 中找到重复值?
- python - 如何在while循环之外使用变量