0

以下のエラーが自明であることを願っています.event_timeをいくつかのcart_timeと比較したい.通常、このような操作が必要な場合は使用する必要があることを知っていますinが、タイムスタンプの場合はそれを比較する方法

 mysql> SELECT bsid
        FROM access_aug15
        WHERE event_time < (SELECT cart_time 
                            FROM chat_final 
                            WHERE bsid in (SELECT bsid  
                                           FROM access_aug15
                                           WHERE eventid="11"
                                           AND current_page not like  '%cart%'));

 ERROR 1242 (21000): Subquery returns more than 1 row

編集:テーブル構造 access_aug15

  +-------------------+--------------+------+-----+---------+-------+
  | Field             | Type         | Null | Key | Default | Extra |
  +-------------------+--------------+------+-----+---------+-------+
  | vid               | varchar(200) | YES  |     | NULL    |       |
  | bsid              | varchar(200) | YES  | MUL | NULL    |       |
  | event_time        | datetime     | YES  | MUL | NULL    |       |
  | eventid           | varchar(10)  | YES  | MUL | NULL    |       |
  | current_page      | mediumtext   | YES  |     | NULL    |       |
  | departmentid      | varchar(100) | YES  | MUL | NULL    |       |
  | form_id           | varchar(100) | YES  |     | NULL    |       |
  | form_name         | varchar(100) | YES  |     | NULL    |       |
  | page_title        | varchar(200) | YES  |     | NULL    |       |
  | report_date       | datetime     | YES  | MUL | NULL    |       |
  +-------------------+--------------+------+-----+---------+-------+

table2:chat_final

  +-------------------+--------------+------+-----+---------+-------+
  | Field             | Type         | Null | Key | Default | Extra |
  +-------------------+--------------+------+-----+---------+-------+
  | bsid              | varchar(200) | YES  | MUL | NULL    |       |
  | chat_time         | datetime     | YES  |     | NULL    |       |
  | cart_time         | datetime     | YES  |     | NULL    |       |
  | customerid        | varchar(100) | YES  |     | NULL    |       |
  | detail            | longtext     | YES  |     | NULL    |       |
  | chat_type         | varchar(5)   | YES  |     | NULL    |       |
  +-------------------+--------------+------+-----+---------+-------+
4

2 に答える 2

0

クエリのサブクエリ (別のクエリ内のクエリ) では、1 つの結果のみが返されます。ただし、複数の行が返されます。サブクエリを変更する必要があります。テーブル構造といくつかのデータを提供してください...その後、正しいクエリを提供します

于 2012-10-30T12:43:57.063 に答える
0
select bsid from access_aug15 where event_time <(select cart_time from chat_final 
 where bsid in (select bsid from access_aug15 
 where eventid="11"  and current_page not like  '%cart%' 
 LIMIT 1) 
 LIMIT 1);
于 2012-10-30T12:45:28.063 に答える