none
【SQL】sql拼接字符串问题 RRS feed

  • 问题

  • 原先的字符串为:sql="select * from [tb_message]"
    现在我想在*号的的左右两边添加count(*)   代码如下:

    sql.Insert(sql.IndexOf("*")," count(").Insert(sql.IndexOf("*")+9,")")
    我使用代码跟踪了一下,始终搞不懂为什么在位置9的地方增加字符串")"  按照我的理解第二次insert的时候应该在indexof("*")的下个位置,也就是当前位置+1增加")"就能解决,可不知为什么在位置9那里增加才可以,这是为什么呢?


    煜诚海参专卖 淘宝店铺:http://jinweb.taobao.com

    2012年3月27日 16:57

答案

全部回复

  • 不曉得這樣是不是你要的結果,

    static void Main(string[] args)
    {
    	string sql = "select * from [tb_message]";
    	sql =  sql.Insert(sql.IndexOf("*"), " count(").Insert(sql.IndexOf("*") + 8, ")");
    	Console.WriteLine(sql);
    	Console.ReadKey();
    }


    以上說明若有錯誤請指教,謝謝。
    http://www.dotblogs.com.tw/terrychuang/

    2012年3月27日 21:50
  • 看着这个写法就蛋疼。

    直接replace * 为 "count(*),*,count(*)" 不就好了么。


    family as water

    • 已标记为答案 jinwb1982 2012年3月28日 13:42
    2012年3月28日 1:53