0

一連の値を記録するテーブルがあるので...

ID.   VAL
1.    18
2.    18
3.    20
4.    20
5.    18

シリーズが変化するレコード (たとえば、レコード 1、3、および 5) を選択する方法を考えています。私はレールを使用していますが、未加工の MySQL が今後の方法になる可能性があると推測しています。

あなたが提供できる助けをいただければ幸いです...

4

1 に答える 1

1

テーブルが次のようになっていると仮定します。

CREATE TABLE records (
  id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  val INT UNSIGNED NOT NULL
);

あなたがしたいのは、次のように、それ自体に対して自己結合することです。

SELECT 
  records2.id
FROM 
  records AS records1
  JOIN records AS records2 ON (records1.id = records2.id-1)
WHERE
  records1.val != records2.val

その前のレコードとレコードを結合します。2 つのレコードの値が異なる場合、答えがあります。

于 2012-07-15T06:56:27.430 に答える