0

私の2つのテーブルがあります:

mysql> desc riddims;
+---------------+--------------+------+-----+-------------------+-------+
| Field         | Type         | Null | Key | Default           | Extra |
+---------------+--------------+------+-----+-------------------+-------+
| riddim        | varchar(255) | NO   | MUL | NULL              |       |
| genre         | varchar(9)   | NO   |     | NULL              |       |
| youtube       | varchar(11)  | NO   |     | NULL              |       |
| image         | varchar(11)  | NO   |     | NULL              |       |
| last_modified | timestamp    | NO   |     | CURRENT_TIMESTAMP |       |
+---------------+--------------+------+-----+-------------------+-------+
5 rows in set (0.00 sec)

mysql> desc tunes;
+---------------+--------------+------+-----+-------------------+-------+
| Field         | Type         | Null | Key | Default           | Extra |
+---------------+--------------+------+-----+-------------------+-------+
| riddim        | varchar(255) | NO   | MUL | NULL              |       |
| artist        | varchar(255) | NO   | MUL | NULL              |       |
| tune          | varchar(255) | NO   |     | NULL              |       |
| label         | varchar(255) | NO   |     | NULL              |       |
| producer      | varchar(255) | NO   |     | NULL              |       |
| year          | varchar(4)   | NO   |     | NULL              |       |
| lyrics        | text         | NO   |     | NULL              |       |
| flag          | varchar(12)  | NO   |     | NULL              |       |
| last_modified | timestamp    | YES  |     | CURRENT_TIMESTAMP |       |
+---------------+--------------+------+-----+-------------------+-------+

私がこれまでに得たのは

SELECT DISTINCT riddim FROM tunes WHERE year = '2012' ORDER BY last_modified DESC LIMIT 20

'riddim'列の最後の20個の追加/変更されたエントリを出力します。'riddims'テーブルの各riddimに関する適切な情報を、テーブル'tunes'から取得した各行に追加するにはどうすればよいですか?

これは両方のテーブルに共通する「キー」であるため、「riddim」列を使用して何らかの方法でそれらを結合する必要があると思いますが、それがどのように機能するかはまだわかりませんでした。

私の目標は、今年の最後の20個のriddimsエントリの「riddim、year、image、label」を(phpを使用して)印刷することです。ここでは、「tunes」テーブルのみが年とラベルに関する情報を保持します。

4

1 に答える 1

1
SELECT DISTINCT
  tunes.riddim AS riddim,
  tunes.year AS year.
  riddims.image AS image,
  runes.label AS label
FROM riddims
INNER JOIN tunes ON riddims.riddim=tunes.riddim
WHERE tunes.year="2012"
ORDER BY riddims.last_modified
LIMIT 20
;
于 2012-09-08T20:25:35.763 に答える