Используя описание вместо desc для таблицы2,
update
table1
set
value = (select code from table2 where description = table1.value)
where
exists (select 1 from table2 where description = table1.value)
and
table1.updatetype = 'blah'
;
Нет, исключительного соответствия, как вы описали, не существует. В этой статье перечислены возможности сопоставления с образцом. Он ограничен:
?
- соответствует любому одиночному символу *
- соответствует любой строке символов, включая пустую строку [
- Начинает определение класса символов, заканчивающееся на ]
, используется для сопоставления подмножества символов Подобный вопрос уже задавался здесь .
Well, I don't know if I miss something, but you can use any pattern you want:
svn propset svn:ignore "*~" .
You can check with:
svn propget svn:ignore .
Another way is to use an alias / script that can do complex parsing when committing.
The best solution I find to use myself is to completely separate the versioned tree of source files from the build tree. This way you do not generate things in your versioned tree of a directory. Then you can only use svn:ignore
to ignore simple artefacts generated by text editors for example.
EDIT:
Sorry my mistake for the first solution, I have misread your post. The two other ways seems relevant even if not exactly what you want...
That's the only solution I know of. You can explicitly add files even if they are ignored though.
You would need to add that setting on all subdirectories though.
# Create a repository with property ignore *
[wlynch@orange ~] cd /tmp
[wlynch@orange /tmp] svnadmin create foo
[wlynch@orange /tmp] svn co file:///tmp/foo co
Checked out revision 0.
[wlynch@orange /tmp] cd co
[wlynch@orange co] svn propset svn:ignore \* .
property 'svn:ignore' set on '.'
# Create 3 files
[wlynch@orange co] touch a
[wlynch@orange co] touch b
[wlynch@orange co] touch c
# We can add all 3 of these files in one transaction
[wlynch@orange co] svn status
M .
[wlynch@orange co] svn add a
A a
[wlynch@orange co] svn add b
A b
[wlynch@orange co] svn status
M .
A a
A b
[wlynch@orange co] svn add c
A c
[wlynch@orange co] svn ci
Sending .
Adding a
Adding b
Adding c
Transmitting file data ...
Committed revision 1.