1.Правильный пример db_select
Возможно, используя drupal 7 db_select, вот мой пример рабочего кода (сделано с помощью этого поста )
Мой пример с таблицейcities
содержащий столбец city
.Найдите города с двойным «o» и отсортируйте по их позиции:
$r = db_select('cities', 't')
->fields('t')
->condition('t.city', '%' . db_like('oo') . '%', 'LIKE');
$r->addExpression("LOCATE('oo', city) ", 'loc');
$r = $r->orderBy('loc', 'DESC')
->execute()
->fetchAllAssoc("id");
В вашем примере так будет:
$r = db_select('taxonomy_term_data', 't')
->fields('t')
->condition('t.name', '%' . db_like('credit') . '%', 'LIKE');
$r->addExpression("LOCATE('credit', name) ", 'loc');
$r = $r->orderBy('loc', 'DESC'); //Or ASC
//Execute your query and gather result anyway you want.
2.Вам нужно использовать db_select?
Как кто-то сказал в комментарии в ссылке, я написал "Есть времена и места, где можно просто использовать db_query."
Я думаю, что это то время :) Не переусердствуйтеваш код просто для использования логики drupal-way, которая часто устарела или слишком проста для сложных задач.