MySQL,选择参数值取决于其在不同行中具有的值的行

时间:2011-10-20 16:29:50

标签: mysql

我有一个表格,我可以在后续行中找到相同的参数(参见示例A)。我需要一个查询来只选择值与前一行不同的行(参见例B),类似

SELECT * FROM tableName WHERE Par(id)!=Par(id-1)

这应该不难,但我是MySQL的新手(以及一般的数据库),我还没有找到命令或示例。

Example A       Example B
*********       *********
*ID *Par*       **ID*Par*
*********       *********
*1  * a *       *5  * a *
*2  * a *       *6  * g *
*3  * a *       *7  * f *
*4  * a *       *8  * d *
*5  * a *       *9  * f *
*6  * g *       *10 * h *
*7  * f *       *11 * j *
*8  * d *       *12 * f *
*9  * f *       *17 * f *
*10 * h *       *18 * d *
*11 * j *       *19 * s *
*12 * f *       *20 * g *
*13 * f *       *21 * t *
*14 * f *       *22 * g *
*15 * f *
*16 * f *
*17 * f *
*18 * d *
*19 * s *
*20 * g *
*21 * t *
*22 * g *

2 个答案:

答案 0 :(得分:3)

试试这个:

SELECT t.id,t.par FROM your_table t
WHERE t.par <> 
    (SELECT par FROM your_table
     WHERE id = t.id + 1)

答案 1 :(得分:0)

SELECT DISTINCT Par FROM table_name

http://www.w3schools.com/sql/sql_distinct.asp