2013-05-24 3 views
0

Im работая на применении в CodeIgniter многоязычным и Im о для хранения языков в БД так:Codeigniter: колонка DB выберите резервный

+++++++++++++++++++++++++++++ 
    id + EN + HU 
+++++++++++++++++++++++++++++ 
+++++++++++++++++++++++++++++ 
    hy + Hy! + Szia! 
+++++++++++++++++++++++++++++ 
    1 + One + Egy 

Это может случиться так, что значение пусто в колонке «HU», но его заполняет «EN», потому что это язык по умолчанию. Итак, вопрос в том, как я могу выбрать столбец «HU» с резервным значением «EN», если он пуст.

Я знаю, что это можно легко решить, выбрав оба столбца и запустив простой PHP-скрипт, но мой план - решить эту проблему только с помощью MySQL.

Любые идеи?

ответ

2

попробуйте это сделать;

SELECT (CASE WHEN HU IS NULL OR HU = '' THEN EN ELSE HU END) AS LANG 
FROM table_name 
WHERE id = '1' 

результата, когда х пусто ID = '1'

One 

результат, когда х не пуст ID = '1'

Egy 

Примечание: этот запрос работает правильно, только если вы пытаетесь получить lang HU!

CASE WHEN условие рода IF statement из SQL

+0

Спасибо, я попробую его в ближайшее время. – martincpt

+0

Спасибо человеку, что он работает :) – martincpt

Смежные вопросы