SQL запрос, help - Форум успешных вебмастеров - GoFuckBiz.com - Страница 2
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB88.6852
BTC/USD68349.4811
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 12.10.2012, 16:23
Start Post: SQL запрос, help 
  #11
Diplomat
Senior Member
 
Аватар для Diplomat
 
Регистрация: 26.10.2009
Сообщений: 597
Бабло: $127864
По умолчанию

MS Access, есть запрос.
Код:
SELECT  ACCOUNT.EMAIL, ACCOUNT.FIRST_NAME, ACCOUNT.LAST_NAME
FROM ACCOUNT INNER JOIN ORDERS ON ACCOUNT.ACCOUNT_ID = ORDERS.FK_ACCOUNT_ID
WHERE (((ACCOUNT.EMAIL) Like "*@*") AND ((ACCOUNT.SEX)=2) AND ((ORDERS.ORDER_ID) Is Not Null));
Как сделать, чтобы выводил только строки с уникальным ACCOUNT.EMAIL ?
Diplomat вне форума  
Старый 12.10.2012, 18:16   #12
Diplomat
Senior Member
 
Аватар для Diplomat
 
Регистрация: 26.10.2009
Сообщений: 597
Бабло: $127864
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от Boddhisatva Посмотреть сообщение
SELECT DISTINCT ACCOUNT.EMAIL
FROM ACCOUNT
WHERE ACCOUNT.EMAIL LIKE "*@*"
ORDER BY ACCOUNT.EMAIL;


Не?

UPD.
А, остальные поля тоже нужно выводить?
Сорри, поспешил.
Да, тоже надо. Так выводит, но без доп. полей
Diplomat вне форума  
Старый 12.10.2012, 18:19   #13
alexpotemkin
Senior Member
 
Регистрация: 27.10.2007
Сообщений: 134
Бабло: $37333
По умолчанию

SELECT ACCOUNT.EMAIL, ACCOUNT.FIRST_NAME, ACCOUNT.LAST_NAME, ACCOUNT.SEX, count(*)
FROM ACCOUNT
WHERE ACCOUNT.EMAIL Like "*@*"
GROUP BY ACCOUNT.EMAIL
alexpotemkin вне форума  
Старый 12.10.2012, 18:26   #14
Diplomat
Senior Member
 
Аватар для Diplomat
 
Регистрация: 26.10.2009
Сообщений: 597
Бабло: $127864
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от alexpotemkin Посмотреть сообщение
SELECT ACCOUNT.EMAIL, ACCOUNT.FIRST_NAME, ACCOUNT.LAST_NAME, ACCOUNT.SEX, count(*)
FROM ACCOUNT
WHERE ACCOUNT.EMAIL Like "*@*"
GROUP BY ACCOUNT.EMAIL
Diplomat вне форума  
Старый 12.10.2012, 19:14   #15
Venya Tolinov
Senior Member
 
Аватар для Venya Tolinov
 
Регистрация: 24.11.2010
Сообщений: 229
Бабло: $52860
Отправить сообщение для Venya Tolinov с помощью Skype™
По умолчанию

Проверь, может оно?
PHP код:
SELECT ACCOUNT.EMAILACCOUNT.FIRST_NAMEACCOUNT.LAST_NAME 
FROM ACCOUNT WHERE ACCOUNT
.EMAIL IN (SELECT DISTINCT ACCOUNT.EMAIL FROM ACCOUNT
__________________
Amazon Graffiti - монетизация страниц в Facebook

Последний раз редактировалось Venya Tolinov; 12.10.2012 в 19:19.
Venya Tolinov вне форума  
Старый 12.10.2012, 22:07   #16
iShurin
Юниор
 
Аватар для iShurin
 
Регистрация: 20.05.2011
Сообщений: 9
Бабло: $2280
По умолчанию

Попробуй так, на работоспособность не тестил, но вроде то, что ты просил

SELECT DISTINCTROW ACCOUNT.EMAIL, ACCOUNT.FIRST_NAME, ACCOUNT.LAST_NAME
FROM ACCOUNT INNER JOIN
(select ORDERS.FK_ACCOUNT_ID from ORDERS
where ORDERS.ORDER_ID Is Not Null
group by ORDERS.FK_ACCOUNT_ID) as TMP_ORDERS
ON ACCOUNT.ACCOUNT_ID = TMP_ORDERS.FK_ACCOUNT_ID
and ((ACCOUNT.EMAIL) Like "*@*")
AND ((ACCOUNT.SEX)=2);

Цитата:
Сообщение от Diplomat Посмотреть сообщение
чтобы не было этой ошибки, нужно в груп бай включить остальные поля, которые у тебя есть в селекте, или использовать для них функции sum, avg и т.д.
__________________
<welcome>

Последний раз редактировалось iShurin; 12.10.2012 в 22:12. Причина: добавил еще текста
iShurin вне форума  
Старый 12.10.2012, 23:28   #17
creator123
Senior Member
 
Аватар для creator123
 
Регистрация: 05.01.2008
Сообщений: 1,676
Бабло: $213930
По умолчанию

вы чет хуйню какую-то пишете
пусть топик стартер ответит что должен вернуть запрос
когда email один и тот же а first_name и last_name разные.
вот я ебу что ему надо. Толи первое, толи последнее, толи список.
Все можно, знать бы что надо то.
creator123 вне форума  
Старый 12.10.2012, 23:45   #18
creator123
Senior Member
 
Аватар для creator123
 
Регистрация: 05.01.2008
Сообщений: 1,676
Бабло: $213930
По умолчанию

короче типа такого

SELECT ACCOUNT.EMAIL,max(ACCOUNT.FIRST_NAME||' '||ACCOUNT.LAST_NAME)
FROM ACCOUNT INNER JOIN ORDERS ON ACCOUNT.ACCOUNT_ID = ORDERS.FK_ACCOUNT_ID
WHERE (((ACCOUNT.EMAIL) Like "*@*") AND ((ACCOUNT.SEX)=2) AND ((ORDERS.ORDER_ID) Is Not Null))
group by 1
creator123 вне форума  
Старый 13.10.2012, 14:31   #19
serg28
Senior Member
 
Регистрация: 07.04.2008
Сообщений: 134
Бабло: $26447
По умолчанию

Цитата:
Сообщение от creator123 Посмотреть сообщение
вы чет хуйню какую-то пишете
пусть топик стартер ответит что должен вернуть запрос
когда email один и тот же а first_name и last_name разные.
вот я ебу что ему надо. Толи первое, толи последнее, толи список.
Все можно, знать бы что надо то.
+1
ТЗ невнятное.
типа "сделайтекнопочкутакуюженопозакругленнейишобонатыц калась"

нормальное ТЗ = быстрый и качественный ответ


по нынешнему ТЗ могу ответить так:

при наличии MS Access и вашего запроса - ну вообще никак.
serg28 вне форума  
Старый 13.10.2012, 15:21   #20
Diplomat
Senior Member
 
Аватар для Diplomat
 
Регистрация: 26.10.2009
Сообщений: 597
Бабло: $127864
ТС -->
автор темы ТС По умолчанию

Цитата:
ТЗ невнятное.
Внятное ТЗ. MS ACCESS
Код:
SELECT ACCOUNT.EMAIL, ACCOUNT.FIRST_NAME, ACCOUNT.LAST_NAME, ACCOUNT.SEX
FROM ACCOUNT
WHERE (((ACCOUNT.EMAIL) Like "*@*"))
ORDER BY ACCOUNT.EMAIL;
Этот запрос выводит мейлы и столбцы ИМЯ и ФАМИЛИЯ
Задача, чтобы все это выводил. Но мейлы были уникальными(т.е дубли не выводились)
Diplomat вне форума  
Старый 13.10.2012, 15:46   #21
sspy
главный злодей гофака
 
Аватар для sspy
 
Регистрация: 18.06.2007
Сообщений: 5,760
Бабло: $953848
По умолчанию

Цитата:
Сообщение от Diplomat Посмотреть сообщение
Задача, чтобы все это выводил. Но мейлы были уникальными(т.е дубли не выводились)
попробуй так
Цитата:
SELECT count(DISTINCT ACCOUNT.EMAIL), ACCOUNT.FIRST_NAME, ACCOUNT.LAST_NAME, ACCOUNT.SEX
FROM ACCOUNT
WHERE (((ACCOUNT.EMAIL) Like "*@*"))
GROUP BY ACCOUNT.EMAIL
ORDER BY ACCOUNT.EMAIL;
__________________
sspy вне форума  
Закрытая тема