Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Column 'id_author' in where clause is ambiguous

Сообщения:  [1-10]   [11-16] 

 
 автор: Eugene77   (29.02.2008 в 14:42)   письмо автору
 
   для: KirillKiev   (29.02.2008 в 13:54)
 

>Сумма - будет работать в мускуле после 4.1
>

>select
>(
>(select count(*) from book_work_themes where id_author =18)
>+
>(select count(*) from book_communication_themes where id_author =18)
>) as s
>

Да - это рабочий код!
Сам до него только что догадался.
В любом случае спасибо за участие!

   
 
 автор: UshkiNaMakushke   (29.02.2008 в 14:35)   письмо автору
 
   для: Eugene77   (22.02.2008 в 15:51)
 

SELECT *
FROM book_work_themes b_w,
book_communication_themes b_c
WHERE b_w.id_author =18
LIMIT 0 , 30

и еще необходимо связать отношения
SELECT *
FROM book_work_themes b_w,
book_communication_themes b_c
WHERE b_w.* =b_c.* and b_w.id_author =18
LIMIT 0 , 30
* - атрибут по которому связываются ваши таблички

   
 
 автор: KirillKiev   (29.02.2008 в 13:54)   письмо автору
 
   для: Eugene77   (27.02.2008 в 21:19)
 

Сумма - будет работать в мускуле после 4.1

select
(
(select count(*) from book_work_themes where id_author =18)
+
(select count(*) from book_communication_themes where id_author =18)
) as s

   
 
 автор: Eugene77   (27.02.2008 в 21:19)   письмо автору
 
   для: Trianon   (25.02.2008 в 21:37)
 

Забыл ещё сказать, мне же надо узнать общее число записей в этих таблицах, удовлетворяющее тому же условию, что и при извлечении строк.
Только при извлечении строк я боюсь что их много окажется и вывожу постранично, но общее число строк как раз для постраничного вывода требуется знать.

   
 
 автор: Eugene77   (27.02.2008 в 19:10)   письмо автору
 
   для: Trianon   (25.02.2008 в 21:37)
 

Хм!
: KirillKiev сразу это написал.
Я думал, что есть другой вариант.
Теперь я могу быть уверен что нет?

   
 
 автор: Trianon   (25.02.2008 в 21:37)   письмо автору
 
   для: Eugene77   (25.02.2008 в 19:15)
 

применяйте UNION - объединение строк
Порядок полей первого и второго селектов должен соответствовать друг другу.

   
 
 автор: Eugene77   (25.02.2008 в 19:15)   письмо автору
 
   для: Trianon   (24.02.2008 в 18:24)
 

>а если бы такого условия не стояло?
Если нет условий, то это должны быть все строки всех таблиц.

Но мне, конечно, казалось, что было бы удобней не создавать такую объёмистую таблицу промежуточного результата...

   
 
 автор: Trianon   (24.02.2008 в 18:24)   письмо автору
 
   для: Eugene77   (24.02.2008 в 18:08)
 

а если бы такого условия не стояло?
Вообще-то условия к табличному выражению применяются уже после построения самой таблицы результата. Дальше из нее отбираются лишь удовлетворяющие условию строки.
Как должны выглядеть строки перед фильтрацией?

   
 
 автор: Eugene77   (24.02.2008 в 18:08)   письмо автору
 
   для: Trianon   (23.02.2008 в 22:06)
 

результат может быть, например, 10 11 12.
Потому что в запросе есть условие b=11. Если бы это условие было найдено ещё и в других строках или в другой таблице, то результат надо сортировать по возрастанию "с"

   
 
 автор: Trianon   (23.02.2008 в 22:06)   письмо автору
 
   для: Eugene77   (23.02.2008 в 20:51)
 

>>что значит извлечь данные на равных?
>
>таблицы совершенно одиннаковые по структуре, и я хотел бы обратиться к двум таблицам так, как будто бы обращаюсь к одной таблице.

Вот Вам две таблицы, одинаковые по структуре.

t1(a, b, c)
1, 2, 3
4, 5, 6
7, 8, 9

t2(a, b, c)
10, 11, 12
13, 14, 15


Что означают Ваши слова "как будто бы обращаюсь к одной таблице"?
Каков должен быть результат запроса?
И почему он должен быть таким, а не другим?

   

Сообщения:  [1-10]   [11-16] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования