select * from product as a left join price as b on a.LCode=b.LCode where b.memberid='m0001'

解决方案 »

  1.   

    执行你的语名,出现错误:mysql是否不支持
    Warning: Supplied argument is not a valid MySQL result resource in G:\jysweb\jysweb4.0\provider\manager\addpp.php on line 262
      

  2.   

    和除开在price表中有的LCode所有产品记录(product表)
    这句话是什么意思,能否讲得清楚些?
      

  3.   

    是执行mysql_query时出错,还是后面mysql_fetch_array等的时候出错.
    如果是mysql_query时出错,请检查数据库是否连接好,是否选择好数据库等.
    如果是mysql_fetch_array出错,建议先到phpMyadmin中调试好SQL语句
      

  4.   

    是执行mysql_query时出错,还是后面mysql_fetch_array等的时候出错.
    如果是mysql_query时出错,请检查数据库是否连接好,是否选择好数据库等.
    如果是mysql_fetch_array出错,建议先到phpMyadmin中调试好SQL语句
      

  5.   

    Warning: Supplied argument is not a valid MySQL result resource in G:\jysweb\jysweb4.0\provider\manager\addpp.php on line 262
    执行mysql_qeury得到的resource ID有错误
     
    按楼主的意思 wasy(嘻嘻哈哈) 漂亮的语句是不是该改成这样
    select * from product as a left join price as b on a.LCode=!b.LCode where b.memberid='m0001'
      

  6.   

    select * from product as a left join price as b on a.LCode!=b.LCode where b.memberid='m0001'这样能查询,但是查出了很多相同的记录,且相同记录是PRICE表的记录总和*1
      

  7.   

    group by 
    or 
    distinct
      

  8.   

    原来是除开,我当作相同了。
    想没有相同纪录:
    select DISTINCT * from product as a left join price as b on a.LCode!=b.LCode where b.memberid='m0001'
      

  9.   

    原来是除开,我当作相同了。
    想没有相同纪录:
    select DISTINCT * from product as a left join price as b on a.LCode!=b.LCode where b.memberid='m0001'
      

  10.   

    哦qiushuiwuhen(秋水无恨) 大虾好久不见clapto  opokar(因为菜所以菜) : wasy(嘻嘻哈哈) 的这个语句是没有错误的,看看你的数据库的记录是不是有问题
      

  11.   

    这条语句是没错,但是运行它简直是慢得要死,占据CPU100%
    select DISTINCT * from product as a left join price as b on a.LCode!=b.LCode where b.memberid='m0001'
    有没有什么好的办法?
      

  12.   

    这个好象没有什么好的办法,因为你必须同时对两个表进行检索a.LCode!=b.LCode 很慢吗?你的表的数据量是不是很大?一般情况下这种语句是很快的-----数据量不是很大的时候(<10万条)
      

  13.   

    奇怪了。
    将你的两个数据表生成sql语句帖出来
      

  14.   

    select a.* from price a left join product b on a.LCode=b.LCode where b.lCode is null and a.memberid='m0001'测试数据:
    # --------------------------------------------------------
    #
    # 数据表的结构 'price'
    #DROP TABLE IF EXISTS price;
    CREATE TABLE price (
       id int(11) NOT NULL auto_increment,
       Lcode tinyint(4) NOT NULL,
       price double(6,2) DEFAULT '0.00' NOT NULL,
       memberid varchar(100) NOT NULL,
       PRIMARY KEY (id)
    );#
    # 导出下面的数据库内容 'price'
    #INSERT INTO price VALUES( '1', '1', '100.00', 'm0001');
    INSERT INTO price VALUES( '2', '2', '200.00', 'm0001');
    INSERT INTO price VALUES( '3', '3', '300.00', 'm0001');
    INSERT INTO price VALUES( '4', '4', '400.00', 'm0001');
    INSERT INTO price VALUES( '5', '5', '500.00', 'm0001');
    INSERT INTO price VALUES( '6', '6', '600.00', 'm0001');# --------------------------------------------------------
    #
    # 数据表的结构 'product'
    #DROP TABLE IF EXISTS product;
    CREATE TABLE product (
       id int(11) NOT NULL auto_increment,
       LCode tinyint(4) NOT NULL,
       name varchar(100) NOT NULL,
       PRIMARY KEY (id)
    );#
    # 导出下面的数据库内容 'product'
    #INSERT INTO product VALUES( '1', '1', 'test');
    INSERT INTO product VALUES( '2', '3', 'hehe');
      

  15.   

    select a.* from price a left join product b on a.LCode=b.LCode where b.lCode is null and a.memberid='m0001'你查询出不是的看一下??
      

  16.   

    什么意思?我查询的结果是
    id Lcode price memberid 
     2   2   200.00   m0001  编辑 删除 
     4   4   400.00   m0001  编辑 删除 
     5   5   500.00   m0001  编辑 删除 
     6   6   600.00   m0001  编辑 删除 price中有123456,product中有13取得是(price表)中除开在product表中有的LCode所有产品记录依此类推可得题目要求,只要稍微动动脑即可,提醒到此为止
      

  17.   

    什么意思?我查询的结果是
    id Lcode price memberid 
     2   2   200.00   m0001  编辑 删除 
     4   4   400.00   m0001  编辑 删除 
     5   5   500.00   m0001  编辑 删除 
     6   6   600.00   m0001  编辑 删除 price中有123456,product中有13取得是(price表)中除开在product表中有的LCode所有产品记录依此类推可得题目要求,只要稍微动动脑即可,提醒到此为止
      

  18.   

    思考:我为什么理会错了题意memberid='m0001'和除开在price表中有的LCode所有产品记录(product表)除开在price表中有的LCode所有产品记录(product表)
    即表示取出product表中不在price中lcode的集合
    但又有个要求memberid='m0001',即必须在price存在lcode
    从而自相矛盾,所以我就改成了memberid='m0001'和除开在product表中有的LCode所有产品记录(price表)select a.* from price a left join product b on a.LCode=b.LCode where b.lCode is null and a.memberid='m0001'
      

  19.   

    我想要的结果是:            会员在“价格表”中有报价的产品就不显示,要显示的产品为产品表中的产品。       如:product 表中
     id  LCode price
     1   2   200.00  
     2   4   400.00 
     3   5   500.00  
     4   6   600.00     如:price 表中
     id Lcode price memberid 
     2   4   400.00   m0001 我要显示的结果为:
     1   2   200.00  
     3   5   500.00  
     4   6   600.00   请各位大侠帮帮我啊!!
      

  20.   

    是這樣呀:
    select distinct a.* from product a left join price  b on a.Lcode!=b.Lcode where b.memberid='m0001'
      

  21.   

    那应该是,呵呵
    除开在price表中memberid='m0001'的LCode所有产品记录(product表)select a.* from product a left join price b on a.LCode=b.LCode and b.memberid='m0001' where b.lCode is null 
      

  22.   

    多谢 wasy(嘻嘻哈哈) qiushuiwuhen(秋水无恨)兄:    能否交个朋友,我也是搞PHP/ASP/DELPHI编程的。我的QQ号为:490075    wasy(嘻嘻哈哈)你的代码用上去是死循环,占CPU 100%,只能重启
        qiushuiwuhen(秋水无恨)兄,可以,但有一个问题:     SQL 语句 :  [编辑]      SHOW FIELDS FROM `provider`.`a` LIKE 'detail'     MySQL 返回:
         Table 'provider.a' doesn't exist
         把这个detail字段不显示,就可以。detail字段为text类型     能否解答一下?
      

  23.   

    我這裡很好,沒有死循環呀,奇怪了
    不過秋水的當然可以大家都可以試一試SHOW FIELDS FROM provider.a like '%detail%'like後面要統配符
    還要注意provider數據庫中有a這個表
      

  24.   

    SHOW FIELDS FROM `数据库`.`表` LIKE '字段'如
    SHOW FIELDS FROM mysql.user like 'host'
      

  25.   

    hehe,又犯錯誤了。幸好有秋水。