Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2007.04.01;
Скачать: [xml.tar.bz2];

Вниз

UNION query. SQL   Найти похожие ветки 

 
Шмель ©   (2007-01-10 10:30) [0]

Столкунулся со следующей проблемой не знаю как обойти!

Вот такой запрос
(SELECT o.*, i.* FROM orders as o, order_items as i WHERE o.order_id=i.order_id) UNION (SELECT o.*, i.* FROM orders_arch as o, order_items_arch as i WHERE o.order_id=i.order_id) ORDER BY time_create DESC LIMIT 50

в результате выдает результсэт где имена колонок стоят без o. i. а они обязательно должны быть (т.е. например мне должно вернуться, o.name, o.key, i.some,.... а возвращает просто name, key, some). Проблема здесь именно в UNION, если выполнять select"ы отдельно - то все ОК. В чем проблема разобраться не могу, в хелпе тоже ничего путного не нашел. Может кто сталкивался!

Вообщем, заранее спасибо


 
stone ©   (2007-01-10 10:32) [1]


> в результате выдает результсэт где имена колонок стоят без
> o. i. а они обязательно должны быть

тогда нужно присвоить колонкам псевдонимы


 
Шмель ©   (2007-01-10 10:40) [2]


> stone ©   (10.01.07 10:32) [1]


Это в смысле o.name as "o.name" и т.д... не катит - в табличках >50 полей


 
stone ©   (2007-01-10 10:44) [3]


> не катит - в табличках >50 полей

Чудес, к сожалению, не бывает.

ЗЫ. Тяжела и неказиста жизнь простого программиста...


 
Ega23 ©   (2007-01-10 10:47) [4]


> в табличках >50 полей


За все 7+ лет занятия БД видел только 1 таблицу в которой было около 35 полей.


 
Шмель ©   (2007-01-10 10:53) [5]


> stone ©   (10.01.07 10:44) [3]


Это bad


> Ega23 ©   (10.01.07 10:47) [4]


Ну сейчас пересчитал, там 45 полей, ошибся немножко:), так или иначе их там много....и ничего не выкинешь


 
Sergey13 ©   (2007-01-10 10:55) [6]

> [0] Шмель ©   (10.01.07 10:30)
> а они обязательно должны быть
А зачем, если не секрет?


 
Шмель ©   (2007-01-10 10:58) [7]


> А зачем, если не секрет?


Этот результсэт затем разбирается уже готовым отлаженным механизмом опираясь как раз на префиксы


 
evvcom ©   (2007-01-10 10:58) [8]

> [5] Шмель ©   (10.01.07 10:53)
> их там много....и ничего не выкинешь

Значит займись обезьяньей работой: перечислением всех o.* и i.*


 
ЮЮ ©   (2007-01-10 10:59) [9]


> Проблема здесь именно в UNION, если выполнять select"ы отдельно
> - то все ОК

Что, так и возвращает o.key, i.some ? Да уж, силен ЁSQL :)

Поле в orders и order_items всё-равно разные, не спутаешь.


 
Desdechado ©   (2007-01-10 11:13) [10]

> имена колонок стоят без o. i. а они обязательно должны быть
Странное желание.
Какой смысл в разборах по алиасам? Хотя, если есть одноименные, но разносмысловые поля в этих таблицах, тогда лучше им явные имена присвоить через AS. Но тогда не понятно, зачем делать разносмысловые имена одинаковыми?


 
Anatoly Podgoretsky ©   (2007-01-10 12:50) [11]

> Шмель  (10.01.2007 10:30:00)  [0]

Я не знаю имеет ли MySQL оптимизатор или нет, но в любом случае такой запрос на помойку, все поля должны быть перечислены ЯВНО и если ты жалуешься, что мол их много, то сейчас самый, самый момент задуматься, а ту ли я профессию выбрал, ведь в ней оказывается надо работать и учиться.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2007.04.01;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.042 c
4-1163354066
vertal
2006-11-12 20:54
2007.04.01
com baud rate > 115200 - это фантастика?


3-1168429862
sapsi
2007-01-10 14:51
2007.04.01
Access and VPN


2-1173596714
_uw_
2007-03-11 10:05
2007.04.01
Курсы валют


2-1173182643
pop
2007-03-06 15:04
2007.04.01
не подключается dbf через ado


15-1173086710
Mozart
2007-03-05 12:25
2007.04.01
Проблема с загрузкой windows





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский