2012-01-19 8 views
0

親切に私にこれを手伝ってください。他の人によって異なるテーブルIDのMY SQL

これは私が参加する必要がありますか?親切に私がこれに使用するMYSQLのクエリは何ですか?私は実際に

をしたい

________________________ 
|id | record_id |value | 
|1 | 31  |xyz | 
|2 | 32  |xyz | 
|3 | 33  |xyz | 
________________________ 

________________ 
|id | user_id | 
|31 | 3315 | 
|32 | 3316 | 
|33 | 3317 | 
________________ 

を、以下のようなものである他のテーブル_record_value

私は名前を持つ一つのテーブルには、次のようなを_recordています

Select value from _record_value ORDER BY _record.userid ASC; 

どうすればいいですか?

私は今、以下

を書くやってSELECT field_valueは INNER record_id jos_js_res_record_values FROM jos_js_res_record.user_id ASC BY jos_js_res_record_values.record_id = jos_js_res_record.id オーダーのjos_js_res_record.id を登録しよう。

+0

「id」を2つのテーブルをリンクするブリッジとして使用できる場合は、「id」を使用できます。 idを使用して2つのテーブルを結合し、そのステップを実行することができます。 –

答えて

2
SELECT rv.value 
    FROM _record_value rv 
     INNER JOIN _record r 
      ON rv.record_id = r.id 
    ORDER BY r.user_id ASC; 
+0

内側のジョイのrとは何ですか?それはテーブルの新しい列です&あなたはrvとしてrecord_valueを省略できますか? –

+1

'r'と' rv'はそれぞれ '_record'と' _record_value'テーブルのエイリアスです。 –

+0

エイリアスを使用すると、ON句を簡単に指定できます。それ以外の場合は、 "ON _record_value.record_id = _record.id"と入力して終了します – Aaron

1
SELECT rv.value 
FROM _record_value rv 
INNER JOIN _record r ON r.id = record_id 
ORDER BY r.user_id; 

興味があるだけが、なぜアンダースコアを使用してテーブル名をリード?この一

SELECT field_value 
FROM jos_js_res_record_values record_id 
INNER JOIN jos_js_res_record.id ON jos_js_res_record_values.record_id = jos_js_res_record.id 
ORDER BY jos_js_res_record.user_id ASC; 

を、FROM句あなたの「RECORD_IDは」jos_js_res_record_valuesの別名として扱われる...その私は:あなたの質問の後半部分では、このクエリについて尋ね

あなたが欲しいものではないと確信しています。あなたのJOIN構文は正しいことに非常に近いです。

SELECT field_value 
FROM jos_js_res_record_values jrv 
INNER JOIN jos_js_res_record jr ON jrv.record_id = jr.id 
ORDER BY jr.user_id ASC; 
+1

注文をダブルチェック – Andrew

+0

私はこのクエリを書いていますか? は 'jos_js_res_record_values' ' record_id' INNER FROM field_value'がjos_js_res_record.user_id ASC BY jos_js_res_record_values.record_id = jos_js_res_record.id オーダーjos_js_res_record.id をJOIN 'SELECT。 –

+0

@MohibSalahuddin、あなたの元の答えにあなたのコードを追加してください...それはその方法を読むのがずっと簡単です。 – Aaron