powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помощь с выборкой
8 сообщений из 8, страница 1 из 1
Помощь с выборкой
    #38919088
hack3p
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, делаю выборку -
1. вывести всех пользователей, c IP которых произошло более одной регистрации,
2. и при этом хотя бы у одного из них должна быть написана характеристика.

В общем, я пока что я пока что сделал первое условие
Код: sql
1.
2.
SELECT firstname, name, description, reg_ip FROM `students` t1
where exists (select reg_ip from `students` t2 where t1.reg_ip=t2.reg_ip and t1.id<>t2.id)



Как мне сделать второе условие?

Заранее спасибо!
...
Рейтинг: 0 / 0
Помощь с выборкой
    #38919115
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где DDL таблицы?
Как определить, что для некоей записи "написана характеристика"?
...
Рейтинг: 0 / 0
Помощь с выборкой
    #38919128
hack3p
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Таблица

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
CREATE TABLE IF NOT EXISTS `students` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `firstname` varchar(20) NOT NULL,
  `name` varchar(10) NOT NULL,
  `description` text NOT NULL,
  `reg_ip` varchar(15) NOT NULL
  PRIMARY KEY (`id`)
) ENGINE=InnoDB



AkinaКак определить, что для некоей записи "написана характеристика"?

Поле description либо пустое, либо нет
...
Рейтинг: 0 / 0
Помощь с выборкой
    #38919143
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hack3pПоле description либо пустое, либо нетЭто NULL, строка нулевой длины, строка из только пробельных символов, некая комбинация перечисленного?
...
Рейтинг: 0 / 0
Помощь с выборкой
    #38919145
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ах, поле ещё и NOT NULL... уже чуть проще. Но всё равно неясно.
...
Рейтинг: 0 / 0
Помощь с выборкой
    #38919161
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ладно, допустим худший вариант. Тогда, например, так:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SELECT firstname, name, description, reg_ip 
FROM students
WHERE reg_ip IN
  (
  SELECT reg_ip 
  FROM students
  GROUP BY reg_ip
  HAVING COUNT(id) > 1
  AND TRIM(GROUP_CONCAT(description SEPARATOR '')) <> ''
  )
;
...
Рейтинг: 0 / 0
Помощь с выборкой
    #38919164
hack3p
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AkinaЛадно, допустим худший вариант. Тогда, например, так:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SELECT firstname, name, description, reg_ip 
FROM students
WHERE reg_ip IN
  (
  SELECT reg_ip 
  FROM students
  GROUP BY reg_ip
  HAVING COUNT(id) > 1
  AND TRIM(GROUP_CONCAT(description SEPARATOR '')) <> ''
  )
;



Ваш вариант сработал, спасибо большое!
Однако почему худший?
...
Рейтинг: 0 / 0
Помощь с выборкой
    #38919393
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hack3pОднако почему худший?Худшим я считаю вариант, когда в "пустом" поле может оказаться произвольная комбинация пробелов, табуляций и прочей неотображаемой хрени.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помощь с выборкой
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]