取别名问题··········

问题描述

取别名问题··········

SELECT
t1.*,
IF (min_time IS NULL, '否', '是') 是否维修厂首单
FROM
(
SELECT
a.sn 订单号,
FROM_UNIXTIME(a.create_time) 下单日期,
h.user_name 维修厂名称,
c.store_name 店铺名称,
a.order_amount 订单金额,
IFNULL(
(
SELECT
SUM(ebt.type_money)
FROM
es_member_bonus emb,
es_bonus_type ebt
WHERE
emb.bonus_type_id = ebt.type_id
AND a.bonus_id LIKE CONCAT('%', emb.bonus_id, '%')
AND emb.member_id = a.member_id
AND emb.used = 1
),
0
) 优惠券金额,
(
SELECT
sales_name
FROM
es_sales i
WHERE
h.sales_id = i.sales_id
) 销售员,
CASE a.status
WHEN 0 THEN
'已确认'
WHEN 1 THEN
'已付款待确认'
WHEN 2 THEN
'已付款'
WHEN 4 THEN
'未发货'
WHEN 5 THEN
'已发货'
WHEN 6 THEN
'已收货'
WHEN 7 THEN
'已完成'
WHEN 9 THEN
'订单已生效'
END 状态 as state
FROM
es_order a,
es_store c,
es_goods d,
es_brand e,
es_order_items f,
es_ent_member h
WHERE
a.member_id = h.member_id
AND a.store_id = c.store_id
AND a.order_id = f.order_id
AND f.goods_id = d.goods_id
AND d.brand_id = e.brand_id
AND a.status IN (0, 1, 2, 4, 5, 6, 7, 9)
GROUP BY
a.sn
ORDER BY
a.create_time
) t1
LEFT JOIN (
SELECT
FROM_UNIXTIME(min(create_time)) min_time
FROM
es_order
GROUP BY
member_id
) t2 ON t1.下单日期 = t2.min_time
想给是否维修厂首单,优惠券金额等都取一个别名,改如何做,新手求救,哭了。

解决方案

sql里面怎么还有if?因该是用case when来判定吧。如:(case when min_time IS NULL then '否' else '是' end) 是否维修厂首单

解决方案二:

sql里面怎么还有if?因该是用case when来判定吧。如:(case when min_time IS NULL then '否' else '是' end) 是否维修厂首单

解决方案三:

case when 可以使用decode代替,还有一个nvl函数也比较好用,两者结合起来代码就简单明了

解决方案四:

师老灞上·桓温 作者:★浮星槎★  
(一)木犹如此
晋太和四年(公元369年),大司马桓温统帅五万军队,第三次北伐。大军从姑 孰(今安徽当涂)出发,途经金城(今江苏江乘县附近)。这一年,距他出任琅 琊内史(晋朝北方领土丧失后,在南方设立侨州、侨郡、侨县,以示恢复之志。 琅琊就是侨郡之一,治所金城)的时候已经整整三十七年,距他离开金城,升任 徐州刺史的时候也已经二十多年了。岁月无情......
答案就在这里:师老灞上·桓温 (一)

时间: 2024-08-31 10:18:16

取别名问题··········的相关文章

java别名问题

"别名"意味着多个句柄都试图指向同一个对象,就象前面的例子展示的那样.若有人向那个对象里写入一点什么东西,就会产生别名问题.若其他句柄的所有者不希望那个对象改变,恐怕就要失望了.这可用下面这个简单的例子说明:   //: Alias1.java // Aliasing two handles to one object public class Alias1 { int i; Alias1(int ii) { i = ii; } public static void main(Stri

深入浅出Mybatis系列(四)---配置详解之typeAliases别名(mybatis源码篇)

深入浅出Mybatis系列(四)---配置详解之typeAliases别名(mybatis源码篇) 上篇文章<深入浅出Mybatis系列(三)---配置详解之properties与environments(mybatis源码篇)> 介绍了properties与environments, 本篇继续讲剩下的配置节点之一:typeAliases. typeAliases节点主要用来设置别名,其实这是挺好用的一个功能, 通过配置别名,我们不用再指定完整的包名,并且还能取别名. 例如: 我们在使用 co

MySQL笔记之别名的使用_Mysql

在查询时,可以为表和字段取一个别名.这个别名可以代替其指定的表和字段 为表取别名 复制代码 代码如下: mysql> SELECT * FROM department d    -> WHERE d.d_id=1001;+------+-----------+--------------+-------------+| d_id | d_name    | function     | address     |+------+-----------+--------------+------

MySQL中使用表别名与字段别名的基本教程_Mysql

MySQL 表别名(Alias)SQL 表别名 在 SQL 语句中,可以为表名称及字段(列)名称指定别名(Alias),别名是 SQL 标准语法,几乎所有的数据库系统都支持.通过关键字 AS 来指定. 表别名语法: SELECT column FROM table AS table_alias 上述 SQL 执行后的效果,给人感觉是对 table_alias 表进行查询,但实际上对单表做简单的别名查询通常是无意义的.一般是对一个表要当作多个表来操作,或者是对多个表进行操作时,才设置表别名. 表别

《好学的C++程序设计》——2.2 别名竟然登上大雅之堂

2.2 别名竟然登上大雅之堂 好学的C++程序设计 2.2.1 别名变量概念 别名俗称外号或绰号,如"丫蛋"."狗熊"等.C++中把别名雅称为"引用".但"引用"有"引而用之"的意思,难免会产生二义性.为此,本书就直用"别名"作叙述.不过,看别的书时,若看到"引用"二字,有可能是"别名"的雅称,这要注意.特别是考卷中遇到"引用"

SQL server教程:SQL语法

Select用途: 从指定表中取出指定的列的数据 语法: SELECT column_name(s) FROM table_name 解释: 从数据库中选取资料列,并允许从一或多个资料表中,选取一或多个资料列或资料行.SELECT 陈述式的完整语法相当复杂,但主要子句可摘要为: SELECT select_list[ INTO new_table ]FROM table_source[ WHERE search_condition ][ GROUP BY group_by_expression

php命名空间 namespace

php命名空间 namespace 官方说法是: 在PHP中,命名空间用来解决在编写类库或应用程序时创建可重用的代码如类或函数时碰到的两类问题 1.用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突. 2.为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性. 其实命名空间就是为了解决引入不同的文件存在了两个相同的类的情况,其中 __NAMESPACE__ 可以获取namespace的名称. 例如,我有一个index文

ADO.NET 数据库实例教程

ado|教程|数据|数据库 ADO.NET数据库编程比较复杂,名目繁多的类.对象.属性.方法让每一个编程者都感觉恼火.本文旨在介绍ASP.NET Beta2数据库编程的主要内容,帮助编程者最快的了解ADO.NET数据库编程的精髓. 一. Managed Providers 如果你是初学者,可能你会问,什么是"Managed Providers"? Managed Providers提供简单的方法连接和访问数据库,有点类似于数据库连接,当然又比它强的多.Managed Providers

SQL的详细语法介绍——对于学习数据库最基础知识一

数据|数据库|语法 Select用途:  从指定表中取出指定的列的数据 语法:   SELECT column_name(s) FROM table_name   解释: 从数据库中选取资料列,并允许从一或多个资料表中,选取一或多个资料列或资料行.SELECT 陈述式的完整语法相当复杂,但主要子句可摘要为: SELECT select_list [ INTO new_table ] FROM table_source [ WHERE search_condition ] [ GROUP BY g