1. 论坛系统升级为Xenforo,欢迎大家测试!
    Dismiss Notice

使用 LIKE 查询时遇到的奇怪事情

Discussion in '后端开发' started by 不学无术, Feb 16, 2006.

  1. 不学无术

    不学无术 Ulysses 的元神

    Joined:
    Aug 31, 2005
    Messages:
    16,714
    Likes Received:
    39
    今天写了一条应用于 Access 的 SQL 语句:

    "SELECT Tags.Title, (SELECT COUNT(*) FROM Blinkmarks WHERE Blinkmarks.Tags LIKE '%{' & Tags.Title & '}%') AS BlinkmarkCounter FROM Tags;"

    执行的时候得不到预期的效果,无论如何 BlinkmarkCounter 返回都是 0。

    在 Access 中使用“查询”设计来执行上面的 SQL ,结果一样。

    后来换成:

    "SELECT Tags.Title, (SELECT COUNT(*) FROM Blinkmarks WHERE Blinkmarks.Tags LIKE '*{' & Tags.Title & '}*') AS BlinkmarkCounter FROM Tags;"

    即将 % 通配符换成了 * 通配符,可以得到预期效果。

    将语句复制到 ASP 页面中,又得不到执行效果,重新将 * 改回 % ,竟然可以了。极度崩溃中!

    :(
     
  2. srsman

    srsman Active Member

    Joined:
    Nov 8, 2005
    Messages:
    1,920
    Likes Received:
    6
  3. wm_chief

    wm_chief New Member

    Joined:
    Sep 5, 2005
    Messages:
    17,890
    Likes Received:
    46
  4. Tameway

    Tameway New Member

    Joined:
    Sep 6, 2005
    Messages:
    1,286
    Likes Received:
    8
    为什么?