Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Помогите написать select скрипт (Juggle) 25/05/2011 - 17:47:12
      Re: Помогите написать select скрипт (Akina) 25/05/2011 - 18:00:24
      Re: Помогите написать select скрипт (Juggle) 25/05/2011 - 18:12:22
      Re: Помогите написать select скрипт (Akina) 25/05/2011 - 18:43:44
      Re: Помогите написать select скрипт (Juggle) 25/05/2011 - 19:03:52
      Re: Помогите написать select скрипт (Akina) 25/05/2011 - 19:21:32
      Re: Помогите написать select скрипт (Juggle) 26/05/2011 - 11:06:31
      Re: Помогите написать select скрипт (Akina) 26/05/2011 - 11:15:23
      Re: Помогите написать select скрипт (Juggle) 26/05/2011 - 11:35:07
      Re: Помогите написать select скрипт (Juggle) 26/05/2011 - 12:02:26
      Re: Помогите написать select скрипт (Akina) 26/05/2011 - 14:09:38
      Re: Помогите написать select скрипт (Juggle) 26/05/2011 - 15:07:09
      Re: Помогите написать select скрипт (Akina) 26/05/2011 - 16:17:41
      Re: Помогите написать select скрипт (Juggle) 26/05/2011 - 17:20:37
      Re: Помогите написать select скрипт (Akina) 26/05/2011 - 17:39:18
      Re: Помогите написать select скрипт (Juggle) 26/05/2011 - 18:16:02
      Re: Ахринеть! (Akina) 26/05/2011 - 18:52:25
      Re: А вот и нет! (Juggle) 27/05/2011 - 10:03:19
      Re: Помогите написать select скрипт (Akina) 27/05/2011 - 10:50:52
      Re: Спасибо! (Juggle) 27/05/2011 - 13:44:35
      Re: Спасибо! (Akina) 29/05/2011 - 22:16:01
      Re: Ссылки? :) (Juggle) 30/05/2011 - 11:26:42
      Re: Ссылки? :) (Akina) 30/05/2011 - 13:05:12
      Re: Еще раз спасибо! (Juggle) 30/05/2011 - 13:20:51

> Original message text:
> From: Juggle - 25/05/2011 - 17:47:12
> Subject:Помогите написать select скрипт
> -----------------
> Здравствуйте, форумчане!
> Помогите мне написать select скрипт. Для меня сложность в нем заключается в следующем:
> есть 2 таблицы: Table1 и Table2.
> Table1 содержит столбцы: column1/2, и др.
> Table2 содержит столбцы: column1/2., column2, column3
>
> Задача заключается в следующем. Надо выбрать такие строки из Table2, у которых
> ( column2 = A и column3 = В )+ ( column2 = С и column3 = D )
> и вывести в конечном счете Table1.column1/2
>
> Мой вариант:
> select Table1.column1/2 from Table1 t1
> inner join Table2 t2 on t2.column1/2= t1.column1/2
> where (t2.column2 = A and t2.column3 = В) or (t2.column2 = C and t2.column3 = D)
> Но он не совсем то выводит. Где ошибка?
>
>


From: Akina - 27/05/2011 - 10:50:52
Subject:Помогите написать select скрипт
-----------------
Цитата лога консоли:
==================================

Logging to file 'd:\MySQL Datafiles\MySQL_tee.txt'
Enter password: *******
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.8 MySQL Community Server (GPL)

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> use test
Database changed
mysql> create table objects (
-> object_id integer
-> );
Query OK, 0 rows affected (0.11 sec)

mysql> create table params (
-> object_id integer,
-> attr_id integer,
-> list_value_id integer
-> );
Query OK, 0 rows affected (0.05 sec)

mysql> explain
-> SELECT DISTINCT o.*
-> FROM objects o
-> INNER JOIN params p
-> ON o.object_id = p.object_id
-> WHERE
-> (
-> (
-> (p.attr_id = 53395)
-> AND
-> (p.list_value_id <> 13053394)
-> )
-> OR
-> (
-> (p.attr_id = 3049477)
-> AND
-> (p.list_value_id = 13049474)
-> )
-> )
-> GROUP BY o.object_id
-> HAVING COUNT(DISTINCT p.object_id, p.attr_id, p.list_value_id)=2
-> LIMIT 30;
+----+-------------+-------+------+---------------+------+---------+------+------+-----------------------------------------------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+-------+------+---------------+------+---------+------+------+-----------------------------------------------------+
| 1 | SIMPLE | NULL | NULL | NULL | NULL | NULL | NULL | NULL | Impossible WHERE noticed after reading const tables |
+----+-------------+-------+------+---------------+------+---------+------+------+-----------------------------------------------------+
1 row in set (0.03 sec)

==================================

Запрос - корректный. С точки зрения MySQL. А если убрать LIMIT - то и с точки зрения SQL92. Так что переписывайте запрос с учётом особенностей синтаксиса Оракла.

Если не получается - выпрямляйте руки.


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
38565



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |