Одинарные кавычки вместо двойных?
, Где? Здесь? если (текст [я] == "")
текст [я] даю символ/байт, и это сравнивается с массивом (вероятно, unicoded??) символы/байты. Это не работает хорошо.
Скажите: сравните '1' с 1
или "1" с "один" или (2-1) с "eins", что Вы думаете, корректные ответы, или нет ли так или иначе никакой значимый ответ?
Помимо этого: программа не будет работать очень хорошо с одинарными кавычками или, учитывая пример "words.txt" =
одно слово или 2 слова или больше слов здесь?
SELECT *
FROM Users u
WHERE NOT EXISTS
(
SELECT NULL
FROM ProjectSkill ps
WHERE ps.pk_project = @someid
AND NOT EXISTS
(
SELECT NULL
FROM UserSkills us
WHERE us.fk_user = u.id
AND us.fk_skill = ps.fk_skill
)
)
-- Assumes existance of variable @ProjectId, specifying
-- which project to analyze
SELECT us.UserId
from UserSkills us
inner join ProjectSkills ps
on ps.SkillId = us.SkillId
and ps.ProjectId = @ProjectId
group by us.UserId
having count(*) = (select count(*)
from ProjectSkills
where ProjectId = @ProjectId)
Вы бы хотели протестировать эту отладку, поскольку у меня нет тестовых данных для ее выполнения. То же самое и с индексированием для его оптимизации.
(Теперь, чтобы опубликовать и посмотреть, может ли кто-нибудь придумать лучший способ - должно быть что-то более тонкое и эффективное, чем это.)