2009-09-29 36 views
0

下面的解釋擴展讓我知道,MySQL在內部做了許多排序轉換,如latin1和_utf8。排序規則轉換是否正常?

(`mydb`.`node`.`status` = _latin1'1') and (`mydb`.`node`.`type` = _utf8'usernode') 
and (`mydb`.`node`.`uid` = `mydb`.`users`.`uid`) 
and (`mydb`.`usernode_list`.`uid` = _latin1'65484') 

這是正常的嗎?這會減慢查詢速度嗎?

回答

0

我不認爲這是一個問題。轉換隻發生在你的查詢中似乎是字面值的東西上,所以它們應該只發生一次,它不應該影響性能。 (爲什麼它感覺需要強制看起來像是整數文字我不知道)

也許你的連接使用不同的字符集來使用數據庫中使用的字符集?爲了理智,最好對連接和所有數據使用相同的字符集。