2016-03-22 16 views
0

Ich arbeite mit CodeIgniter und möchte einige Werte mit einer eindeutigen Abfrage zurückgeben, ich bin nicht in der Lage, die Sortierung in der Datenbank selbst zu ändern, und kann dies auch nicht in der Konfiguration tun, wie ich bin jemand anderes Code.CodeIgniter Active Record Sortierung

Gibt es eine Möglichkeit, innerhalb einer Abfrage mit Active Record zu sortieren? Bisher habe ich versucht:

$this->db->select('fieldName COLLATE utf8_bin');

Ich habe auch versucht $this->db->collator_set_default ohne Erfolg zu nutzen.

Antwort

1

Versuchen über die manuelle https://codeigniter.com/user_guide/database/configuration.html

In der Standardverbindung Array lesen Sie Felder

'char_set' => 'utf8', 
'dbcollat' => 'utf8_general_ci', 

Könnte gehen auch mit einem Code, während die Abfrage

$this->db->query("SET NAMES 'latin1'"); 
$this->db->insert('table_name', $data); 
+0

Leider ausgeführt finden Habe ich festgestellt, dass ich die config nicht bearbeiten kann, dazu gehört auch datenbank.php, danke trotzdem :) –

+0

Uhm ich sehe. Du kannst versuchen wie $ this-> db-> query ("SET NAMES 'latin1'"); und dann Ihre Abfrage $ this-> db-> einfügen ('Tabellenname', $ Daten); könnte helfen –

+0

Ich bin nicht in die Datenbank einfügen, ich versuche zu wählen, ohne Groß-und Kleinschreibung, was bedeutet, dass ich habe zum Beispiel "SELECT DISTINCT Name COLLATE utf8_bin FROM table" würde sowohl "this" als auch "This" zurückgeben, während es ohne COLLATE nur "this" zurückgeben würde "oder" This " –