易截截图软件、单文件、免安装、纯绿色、仅160KB

如何把这个MS SQL的语句换成等价的MySQL语句?

语句如下,其中字段名存储的是网址,整个代码的功能就是统计相同网站的次数,
比如说有两条记录,一个是http://www.baidu.com/  另一个是http://www.baidu.com/a/b/c/d/
这段代码就会按照点号"."的位置把"baidu"取出来,那么baidu的访问次数是2,就是这么个效果
现在的问题就是MySQL没有提供CHARINDEX函数,我搜了一下,MySQL里有个instr函数,但是这个函数只能有两个参数,
但是注意这个代码中有几个CHARINDEX里是三个参数,这就是最大的问题。

SQL code:


SELECT top 6
COUNT
(
SUBSTRING
(
字段名,
CHARINDEX('.',字段名)+1,CHARINDEX('.',字段名,CHARINDEX('.',字段名)+1)-CHARINDEX('.',字段名)-1
)
)
as nCount,

SUBSTRING
(
字段名,
CHARINDEX('.',字段名)+1,CHARINDEX('.',字段名,CHARINDEX('.',字段名)+1)-CHARINDEX('.',字段名)-1
)
as address

from 表名

GROUP BY
SUBSTRING
(
字段名,
CHARINDEX('.',字段名)+1,
CHARINDEX('.',字段名,CHARINDEX('.',字段名)+1)-CHARINDEX('.',字段名)-1
)

order by count(*) desc



SQL code:

mysql> select * from url;
+-------------------------------+
| url |
+-------------------------------+
| http://www.baidu.com/ |
| http://www.baidu.com/a/b/c/d/ |
| http://www.sina.com


相关问答:

sql查询疑问

表中按datadate,tradeid为主键,也就是说tradeid会重复出现在不同天中,同一天的tradeid是不同的。现在我希望取一段时间范围内不重复的tradeid,且只要每个tradeid的最后一次出现的那条。sql语句该怎么写

: ......

精妙SQL語句

SQL code:
1. 说明:复制表(只复制结构,源表名:a,新表名:b)
SQL: select * into b from a where 1<>1;
2. 说明:拷贝表(拷贝数据,源表名:a,目标表名:b)
SQL: insert into b(a ......

SQL语句大小写

表名:ABC
select * from abc 提示找不到对象
select * from ABC 正确.
这个大小写在哪里设置的?

以前建的库倒没这个问题.后在本身重新建立一新库.由于程序中基本上全为小写.程序无法运行.全是错误提 ......

SQL日期转换~

下面的日期我要用变量表示
但我接收的日期的格式与下面不同
  我接收的如 2009-10-10
我应该怎么变呢?
每次都把 date1  和date2用String 这样是不是不好
SQL code:

between '" ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号