私は2つのテーブルを持っています:
CREATE TABLE `digits` (
`digit` tinyint(3) unsigned NOT NULL,
`group` tinyint(3) unsigned NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `digits` (`digit`, `group`) VALUES
(1, 1),
(2, 1),
(3, 1),
(4, 2),
(5, 2);
と
CREATE TABLE `scores` (
`digit1` tinyint(3) unsigned NOT NULL,
`digit2` tinyint(3) unsigned NOT NULL,
`score` tinyint(3) unsigned NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `scores` (`digit1`, `digit2`, `score`) VALUES
(1, 2, 5),
(1, 4, 9),
(2, 3, 3);
私がやりたいのは、スコア付きの数字のすべての組み合わせ(繰り返しなし)を選択し、スコアがない場合はnullを選択することです
回答例(WHERE group <=1
):
digit1 | digit2 | score
-----------------------
1 | 2 | 5
1 | 3 | null
2 | 3 | 3
回答例(WHERE group <=2
):
digit1 | digit2 | score
-----------------------
1 | 2 | 5
1 | 3 | null
1 | 4 | 9
1 | 5 | null
2 | 3 | 3
2 | 4 | null
2 | 5 | null
3 | 4 | null
3 | 5 | null
4 | 5 | null