ツリーテーブルを持っています:
Emails_blocks
blocks_id blocks_pos url_type blocks_folder
1 1 1 emails_block
2 2 1 emails_show
3 3 1 emails_add
4 4 0 emails_share
Emails_blocks_text
texts_id blocks_id langs_code
2 1 ru
1 1 ua
3 2 ua
Emails_blocks_aliases
blocks_id aliases_name
1 news
2 drafts
そしてクエリがあります:
SELECT `blocks_id`, `blocks_folder`, `blocks_name`, `aliases_name`, `langs_code`
FROM `a_emails_blocks`
LEFT JOIN `a_emails_blocks_text` USING(`blocks_id`)
LEFT JOIN `a_emails_blocks_aliases` USING(`blocks_id`)
GROUP BY `blocks_id`
ORDER BY FIELD(`a_emails_blocks_text`.`langs_code`, 'ua', 'ru')
しかし、結果として、langs_code 'ua' ではなく、blocks_id = 1があり、langs コード 'ru' があります。 別のテーブルから注文しない理由がわかりません。
blocks_id blocks_folder aliases_name langs_code
1 emails_block news ru
2 emails_show drafts ua
3 emails_add
4 emails_share