2010-07-09 3 views
0

У меня есть таблица с образцом имени в моей базе данных имеет threecolumns именно слова, D1, D2 и у него есть некоторые данные, такие как нижепомощи для SQL запроса

 
Words  D1  D2 D3 
pleasure 1  0 1 
question 0  0 0   
answer  0  1 1 
request  1  0 0 
scount  1  0 0 

так что теперь я хочу, чтобы вычислить параметр n00, который означает, scount = 0, а также проверить, где 0 существует в D1 и D2, поэтому здесь для «вопроса» D1 = 0 D2 = 0 и scount = 0, поэтому результат должен быть равен 2, поскольку scount = 0 и D1 = 0, scount = 0 и D2 = 0 это оба удовлетворяют так результат 2 мне нужен sql запрос из этого, пожалуйста, помогите заранее спасибо.

+0

Повторите свой вопрос для наглядности. Удалите свой тег C#. Добавьте тег SQL. (Я сделаю эти теги для вас). Примите несколько ответов на ваши существующие вопросы. Вернуть. –

+4

Итак, почему вы отметили свой вопрос C#, если вам нужен только SQL? Честно говоря, я все еще не понимаю, что именно это предназначено для вычисления ... каков будет результат, если счёт был равен 1? –

+1

@editors: поставить цитаты в слово «вопрос», и это начинает иметь смысл. – Anax

ответ

2

Если я правильно читал вы хотите знать, сколько записей есть с scount = 0 и либо D1 или D2 = 0, это запрос, как это:

SELECT COUNT(*) as N00 FROM mytable WHERE scount = 0 AND (D1 = 0 OR D2 = 0) 

на втором проходе я думаю, что вы «пытаетесь посчитать условия удовлетворены, то есть +1 при D1 = 0 и +1, когда D2 = 0, но только там, где scount = 0, что-то вроде этого:

SELECT (IF(D1=0,1,0)+IF(D2=0,1,0)) as N00 WHERE scount = 0 
+0

спасибо за ваш ответ im sorry scount is row not column, пожалуйста, проверьте сообщение, я сохранил изменения – user347640

+1

@ vj4u, делая scount ряд, делает ваши условия слишком непоследовательными для меня для синтаксического анализа. вы вычисляете значение для каждой строки? если да, добавьте поддельный столбец, чтобы показать, какое значение должно быть. если нет, попробуйте пояснить, как N00 зависит от всех строк. Где D3 вступает в игру? –

0

Ваш вопрос не добавляет вверх. Вы действуете так, как будто scount - это столбец, но это строка. И твой твой вопрос не имеет смысла. Не могли бы вы, возможно, разделить это в отдельных случаях, как:

A: (D1 = 0) AND (D2 = 0) -> N00 = X 
B: (D1 = 0) AND (D2 = 1) -> N00 = Y 

Я не имею ни малейшего представления, как уместить в scount в этих случаях. Вы не можете сказать следующее:

C: (D1 = 0) и (D2 = 0) и (scount = 1) -> N00 = Z

Это невозможно потому, что scount находится в другой строке и не имеет никакого отношения к этой строке вообще.

Смежные вопросы