JBTALKS.CC

标题: 简单的 Mysql 输出语句 [打印本页]

作者: 兴杰    时间: 2013-1-12 05:59 PM
标题: 简单的 Mysql 输出语句
这是例子
我的 table 里面有2个column,3个row,数据是这样的 :
{名字:兴杰 ,薪水:5千} , {名字:张三 ,薪水:10千},{名字:李四 ,薪水:15千}
我用 select * from table order by 薪水
排列后想为数据增加一个 column 排名 , 如:
{名字:李四 ,薪水:15千 ,排名:第1名},{名字:张三 ,薪水:10千 ,排名:第2名},{名字:兴杰 ,薪水:5千 ,排名:第3名}
我改如何写 sql 语句呢 ?

作者: HoLy_ShIt    时间: 2013-1-12 07:07 PM

<table border=1>
<th>名字</th>
<th>薪水</th>
<th>排名</th>
$i=0;
select * from table order by 薪水 ;
$result = ....;
while($row = myswqli_fetch_array($result){
echo $row[名字''] .  $row[薪水''] .  $++.  
}

可以吗?
作者: HoLy_ShIt    时间: 2013-1-12 07:08 PM
<table border=1>
<th>名字</th>
<th>薪水</th>
<th>排名</th>
$i=0;
select * from table order by 薪水 ;
$result = ....;
while($row = myswqli_fetch_array($result){
echo $row[名字''] .  $row[薪水''] .  “第" .  $++ . "名";  
}

可以吗?

作者: 兴杰    时间: 2013-1-12 07:32 PM
HoLy_ShIt 发表于 2013-1-12 07:08 PM
名字
薪水
排名

有没有直接用 sql 生成的 ?不通过php  .net 等
作者: 兴杰    时间: 2013-1-12 08:14 PM
HoLy_ShIt 发表于 2013-1-12 07:08 PM
名字
薪水
排名

类似用 sql create view 实现的了吗?
作者: jessamoment    时间: 2013-1-14 05:39 PM
SELECT  名字, 薪水, @curRow := @curRow + 1 AS 排名
FROM    table
JOIN    (SELECT @curRow := 0) r
ORDER BY 薪水;
作者: 兴杰    时间: 2013-1-21 01:16 AM
jessamoment 发表于 2013-1-14 05:39 PM
SELECT  名字, 薪水, @curRow := @curRow + 1 AS 排名
FROM    table
JOIN    (SELECT @curRow := 0) r

成了 ,那如果我想输出的 是  第 "1"名 , 第 "2" 名 , 我的"第"和"名" 要加在哪里?

SELECT name, salary, @rank := @rank + 1 AS ranking FROM table1 ,(SELECT @rank := 0) r ORDER BY  salary;

作者: 兴杰    时间: 2013-1-21 01:20 AM
set @a=0;
select concat('第',(@a:=@a+1),'名') as ranking ,name,salary from table1 order by salary desc

如果是这样写的话,有更好的吗?
作者: jessamoment    时间: 2013-1-21 02:47 AM
本帖最后由 jessamoment 于 2013-1-21 02:49 AM 编辑

哈哈~我也不懂~ 给点点时间研究下。。。稍后回复
作者: jessamoment    时间: 2013-1-21 02:56 AM
更好的意思是?
作者: 兴杰    时间: 2013-1-21 06:19 PM
jessamoment 发表于 2013-1-21 02:56 AM
更好的意思是?

就是代码少少,简单记的咯 ,哈哈哈
作者: jessamoment    时间: 2013-1-22 03:56 AM
兴杰 发表于 2013-1-21 01:20 AM
set @a=0;
select concat('第',(@a:=@a+1),'名') as ranking ,name,salary from table1 order by salary d ...

我也只懂这方法。这应该最容易了解和记了吧




欢迎光临 JBTALKS.CC (https://mobile.jbtalks.cc/) Powered by Discuz! X2.5