MySql запросы

demko73
На сайте с 14.01.2009
Offline
52
712

Привет всем_)

Запрос:

select * from table1 where cat=1 and text in (2,4,6);

Вопрос: как сделать. чтобы мне выводило результат, если только все эти три поля существуют(2,4,6)?

Лучше не бывает (http://porno-engine.ru)
skAmZ
На сайте с 04.09.2009
Offline
122
#1


select * from (select @rownum:=@rownum+1 rownum, s.* from table1 as s, (SELECT @rownum:=0) r where cat=1 and text in (2,4,6)) as t where @rownum=3

При условии что сочетание (cat, text) или просто text уникальное.

dvaes
На сайте с 03.09.2007
Offline
65
#2

можно попробовать группировать по text, а потом просто смотреть на ко-во найденных строк

demko73
На сайте с 14.01.2009
Offline
52
#3

skAmZ честно не знал что такое возможно на мускуле, вот теперь разбираюсь в новых для меня деталях

thanks ОГРОМНОЕ_)

demko73 добавил 06.09.2010 в 20:41

Разобрался вроде, ща немного изменил, если кому ещё интересено:



SELECT @c:=@c+1 c, param.* FROM param,(select @c:=0) c WHERE cat =18 AND text IN ( 10, 14, 15 ) and @c <3

тут немного теории нашёл

www.mysqldiary.com/user-defined-variables

===========

Всем ещё раз спасибо!

demko73
На сайте с 14.01.2009
Offline
52
#4

Всем ещё раз привет.

Вопрос: как подсчитать на mysql кол-во каждого уникального значения в поле, пример:

таблица

id pid

1 4

2 3

3 8

4 4

5 12

6 8

=========

мы должны получить типа

pid count

4 2

3 1

8 2

12 1

=============

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

skAmZ
На сайте с 04.09.2009
Offline
122
#5

select pid, count(pid) from table group by pid

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий