我正在尝试找到一种优化的方法来将列的第一个字符移动到它的末尾,如果第一个字符是'@',就在DBGrid中显示数据时(不是永久存在于数据库中)。
MySQL中有很多功能,但我想找到最好的方法!
我在DBGrid中显示了很多(大约2000个)记录。它会影响性能吗?!
答案 0 :(得分:1)
这是一种方法。我不希望它对2000行的性能产生重大影响:
select concat(substr(your_column,2),left(your_column,1))
from your_table
答案 1 :(得分:0)
解决方案:
SELECT (CASE WHEN ASCII(MyColumn)=64 THEN (CONCAT(SUBSTR(MyColumn,2),'@')) ELSE MyColumn END) FROM MyTable;
p.s:64 is ascii code for '@'
但我认为@fancyPants是对的。最好在应用程序级别处理它!
我将在数据集中使用OnGetText事件在我的应用程序中处理它。