Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Mysql SELECT???

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
ytrewq123
Отправлено: 26 Мая, 2016 - 13:35:25
Post Id


Посетитель


Покинул форум
Сообщений всего: 352
Дата рег-ции: Окт. 2014  


Помог: 0 раз(а)




Здравствуйте!
Помогите пожалуйста кто знает. Ну никак не могу понять почему так.

Есть 2 элементарные таблицы в базе данных.
Первая
Table: tablica
Create Table: CREATE TABLE `tablica` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`imja` char(111) COLLATE utf8_unicode_ci DEFAULT NULL,
`tekst` text COLLATE utf8_unicode_ci,
`mesto` char(111) COLLATE utf8_unicode_ci DEFAULT NULL,
`vremj` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTA
MP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=74 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci

И вторая
Table: tabla
Create Table: CREATE TABLE `tabla` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nombre` char(123) COLLATE utf8_unicode_ci DEFAULT NULL,
`cosas` text COLLATE utf8_unicode_ci,
`datos` text COLLATE utf8_unicode_ci,
`horas` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMEST
MP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci

Ну ничего особенного.
Я хочу просто выбрать всё из Table: tablica.
Где значения столбика mesto = РАВНО значению значению во второй столбика datos.
Пишу запрос
mysqli_query($so,"SELECT * FROM `tablica` JOIN `tabla` WHERE `datos` = `mesto`");

И получаю. Данные(смотрю только поле imja ), которые повторяются много раз. ПОЧЕМУ? Нк ни как не пойму.
localhost
localhost
Задача заключается
Задача заключается
localhost
localhost
Задача заключается
Задача заключается

Хотя по всей логике должно быть просто.
localhost
localhost
Задача заключается
Задача заключается
Почему происходит это повторение.
Я и через JOINы ну ни как нету того что надо.
И самое странное когда в WHERE пишу id тогда всё норма.
Почему. Может потому что id как индекс или ещё что.
Поясните пожалуйста в чём дело. И как мне добиться чего я хочу.
 
 Top
3d_killer
Отправлено: 26 Мая, 2016 - 13:51:55
Post Id



Участник


Покинул форум
Сообщений всего: 1916
Дата рег-ции: Апр. 2011  
Откуда: Ростов-на-Дону


Помог: 21 раз(а)




Есть такая весчь в MYSQL как GROUP BY
(Добавление)
либо DISTINCT
 
My status
 Top
igosja
Отправлено: 26 Мая, 2016 - 13:57:51
Post Id



Гость


Покинул форум
Сообщений всего: 77
Дата рег-ции: Март 2013  
Откуда: https://vhol.org


Помог: 3 раз(а)




CODE (SQL):
скопировать код в буфер обмена
  1. SELECT * FROM `tablica` JOIN `tabla` WHERE `datos` = `mesto` GROUP BY `tablica`.`id`
 
 Top
ytrewq123
Отправлено: 26 Мая, 2016 - 15:25:16
Post Id


Посетитель


Покинул форум
Сообщений всего: 352
Дата рег-ции: Окт. 2014  


Помог: 0 раз(а)




ААААААААААААААААААААА!!!!!!!!!!!!!!!!!!!!!!!!!

Спасибо Вам
3d_killer И igosja
Такое чувство что я поумнел на 100%. Кaк буд-то перешёл в следующий класс!!!!!!!!!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB