十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
select
创新互联建站主要从事成都做网站、成都网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务龙南,10余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220
goods_name 产品名字,
max(price) 价格,
max(case rank_name when 'VIP1' then (case when user_price is null then discount*price/100 else user_price end) end) vip1价格,
max(case rank_name when 'VIP2' then (case when user_price is null then discount*price/100 else user_price end) end) vip2价格,
max(case rank_name when 'VIP3' then (case when user_price is null then discount*price/100 else user_price end) end) vip3价格
from member_price mp
left join goods gd on gd.goods_id = mp.goods_id
left join user_rank ur on ur.rank_id = mp.rank_id
group by goods_name;
mysql不是很熟悉,所以写了个标准sql语法的。我记得mysql中group by的select可以不用跟聚合函数的,所以LZ大概可以把max()去掉,而mysql中好像有isnull,ifnull的函数,我不太了解,这里用case语句替代了,LZ可以自行替换。
1、可以根据这样写:
update tablename set 字段1=什么,字段2=什么 where 条件
这个是SQL SERVER的语法,MY SQL的思路应该是类似的
---------------------------------------------------------
select
*
from
(select
isnull(sum(online_count),0) h16
from
#a
where
datepart(hh,watch_time)=16) a,
(select
isnull(sum(online_count),0) h17
from
#a
where
datepart(hh,watch_time)=17) b,
(select
isnull(sum(online_count),0) h18
from
#a
where
datepart(hh,watch_time)=18) c,
(select
isnull(sum(online_count),0) h19
from
#a
where
datepart(hh,watch_time)=19) d
SELECT INTO 语句
SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中。
SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档。
SQL SELECT INTO 语法
您可以把所有的列插入新表:
SELECT *
INTO new_table_name [IN externaldatabase]
FROM old_tablename
或者只把希望的列插入新表:
SELECT column_name(s)
INTO new_table_name [IN externaldatabase]
FROM old_tablename
所以应该这么写
SELECT b.列1,b.列2
INTO a
FROM b
WHERE id=1
---注:b表中插入a表中的列不能有a不包含的列,也就是说上面语句的b.列1,b.列2这些中不能有a中不包含的列
1、首先我们建立一个表表的数据,这个表里有25条数据,id从1到25。(下图是部分截图)
2、要分页数据,首先我们假设一页有10条数据,我们可以用mysql的 limit关键字来限定返回多少条数据。并且用order by来排序数据,这里用 id来排序。所以第一页的sql可以如图这样写。
3、执行后得到的数据如图,就是 id从1到10的前10条数据,因为我们是按id升序来排序的。
4、上面第一页的sql是简化的写法,完整的写法如图,得到的结果和上图的一模一样。代码里 limit 0, 10 的意思是从第一条数据开始,取10条数据。(注意的是第一条数据是从0开始的)
5、那么第二页的数据,关键是要知道是从哪一条数据开始,可以用这个公式得到: (页码-1) * 每页显示多少条,即 (2-1) * 10 = 10, 所以sql语句如图, limit 10, 10。
6、执行后,结果正确,得到id从11到20的10条数据。
7、同理第三页数据的sql如图,br/就是 limit 20, 10。
8、查询的结果如图,因为这页只剩下5条数据了,所以只显示5条数据。如果你有更多页的数据,后面的数据只需要按上面的公式,得到从哪行开始,就可以写对应的sql语句了。