Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.12.2011, 18:10   #1
IlyaXXX
 
Регистрация: 13.10.2011
Сообщений: 5
По умолчанию Простенький запрос

Есть 2 таблицы (на самом деле их 3 но 3-я здесь не нужна) с полями
1)Tags
-ID
-Name
2)EvensTags
-ID
-TagID

Нужно определить сколько записей есть по имени тэга
Делаю вот такой запрос

SELECT ID
FROM EventTags
WHERE Tags.ID=TagID AND Tags.Name=@Name

Подскажите плиз че делаю не так
IlyaXXX вне форума Ответить с цитированием
Старый 04.12.2011, 15:37   #2
Руслантус
Наркоман самоучка
Форумчанин
 
Аватар для Руслантус
 
Регистрация: 22.07.2007
Сообщений: 276
По умолчанию

По идеи, запрос должен быть таким:

SELECT COUNT(*) FROM EventTags WHERE TagID = 'тут ID нужного тэга'
#include <мозг.h>
Руслантус вне форума Ответить с цитированием
Старый 04.12.2011, 18:52   #3
IlyaXXX
 
Регистрация: 13.10.2011
Сообщений: 5
По умолчанию

Спс все работает но хотелось бы не по ID тэга искать количество записей, а по названию
IlyaXXX вне форума Ответить с цитированием
Старый 04.12.2011, 19:29   #4
Руслантус
Наркоман самоучка
Форумчанин
 
Аватар для Руслантус
 
Регистрация: 22.07.2007
Сообщений: 276
По умолчанию

Для этого вам сначала нужно найти по Названию тэг, потом по его Ид искать уже остальные данные. Так будет правильно.
#include <мозг.h>
Руслантус вне форума Ответить с цитированием
Старый 04.12.2011, 20:06   #5
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,520
По умолчанию

Код:
select count(*)
from EventTags
inner join Tags on (tags.ID = EvensTags.tagID)
where (Tags.Name = @Name)
pu4koff вне форума Ответить с цитированием
Старый 05.12.2011, 01:43   #6
IlyaXXX
 
Регистрация: 13.10.2011
Сообщений: 5
По умолчанию

Цитата:
Сообщение от pu4koff Посмотреть сообщение
Код:
select count(*)
from EventTags
inner join Tags on (tags.ID = EvensTags.tagID)
where (Tags.Name = @Name)
Не работает. Всем спс помогли на другом форуме. Нужен был запрос вида
Код:
SELECT COUNT(TA.ID) 
FROM Tags TA
LEFT join EvensTags ET ON TA.ID = ET.TagID
WHERE TA.Name = @Name
IlyaXXX вне форума Ответить с цитированием
Старый 05.12.2011, 13:44   #7
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,520
По умолчанию

Цитата:
Сообщение от IlyaXXX Посмотреть сообщение
Не работает. Всем спс помогли на другом форуме. Нужен был запрос вида
Код:
SELECT COUNT(TA.ID) 
FROM Tags TA
LEFT join EvensTags ET ON TA.ID = ET.TagID
WHERE TA.Name = @Name
Не уверен, что left join тут уместен. Попробуйте на теге, для которого нет ни одного события.
pu4koff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Простенький вопрос по js GreenMachine JavaScript, Ajax 2 11.10.2011 15:40
Простенький браузер Ponkole Работа с сетью в Delphi 2 23.06.2011 21:17
Простенький (не для меня) запрос =) MiK5eR Microsoft Office Access 0 23.05.2011 16:04
Простенький клас Chartvit Общие вопросы C/C++ 2 07.01.2010 20:43
простенький запрос odi_noki Microsoft Office Access 9 28.11.2008 20:37