Форум: "Базы";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];
Внизхочу объединить три поля одной таблицы в одно Найти похожие ветки
← →
как сделать (2004-04-27 21:29) [0]Помогите!!!! Пожайлуста!!!!
Например, поля Фамилия, Имя, Отчество нужно объединить в одно, чтобы потом можно было отобразить в DBGride kak один столбец, а не как три.
← →
Просто Я © (2004-04-27 22:32) [1]
procedure TDM.Table1фиоGetText(Sender: TField; var Text: String;
DisplayText: Boolean);
begin
Text :=фам.Value+"/ "+имя.Value+"/ "+отч.Value
end;
← →
Vemer © (2004-04-27 23:07) [2]Или так:
Select (Name1 + " " + Name2 + " " + Name3) as SuperName From My_Table
Плюсы заменить согласно синтаксису используемой БД.
← →
Deniz © (2004-04-28 06:53) [3]> Vemer © (27.04.04 23:07) [2]
> Select (Name1 + " " + Name2 + " " + Name3) as SuperName
> From My_Table
>
> Плюсы заменить согласно синтаксису используемой БД.
Так вроде:Select (Name1 || " " || Name2 || " " || Name3) as SuperName From My_Table
должно везде работать
← →
sniknik © (2004-04-28 08:50) [4]> должно везде работать
ну конечно.
наоборот чаше используется плюс, а эта запись по моему только в IB и клонах (т.е. довольно редко).
← →
ceval © (2004-04-28 12:27) [5]Я можно маленький вопрос
возможно такое проделять с ADOTable ?
← →
Deniz © (2004-04-28 12:41) [6]> sniknik © (28.04.04 08:50) [4]
> наоборот чаше используется плюс, а эта запись по моему только
> в IB и клонах (т.е. довольно редко).
Странное утверждение!
Работает в DBF/Oracle/InterBase и т.д.
А в стандарте SQL как записано? ;-)
← →
Соловьев © (2004-04-28 12:42) [7]следующий вопрос как потом это редактировать :)))
← →
sniknik © (2004-04-28 13:05) [8]> Странное утверждение!
> Работает в DBF/Oracle/InterBase и т.д.
IB я указал, оракл может быть не знаю
а вот с DBF решил проверить (может действительно упускаю чтото)
EOleException : [Microsoft][Драйвер ODBC dBase] Недопустимое использование символов вертикальной черты в выражении запроса ""kjhjkhkj" || NAME"
EOleException : [Microsoft][ODBC Visual FoxPro Driver]Command contains unrecognized phrase/keyword
EOleException : Недопустимое использование символов вертикальной черты в выражении запроса ""kjhjkhkj" || NAME"
(это Jet, не написал от кого ошибка)
какой драйвер еще проверить?
> А в стандарте SQL как записано? ;-)
в каком?
Transact-SQL Reference
+ (String Concatenation)
An operator in a string expression that concatenates two or more character or binary strings, columns, or a combination of strings and column names into one expression (a string operator).
Syntax
expression + expression
← →
Соловьев © (2004-04-28 13:17) [9]
> sniknik © (28.04.04 13:05) [8]
думаю имелось ввиду LocalSQL
← →
Deniz © (2004-04-28 13:36) [10]> Соловьев © (28.04.04 12:42) [7]
> следующий вопрос как потом это редактировать :)))
Вопрос звучал: "Например, поля Фамилия, Имя, Отчество нужно объединить в одно, чтобы потом можно было отобразить в DBGride kak один столбец, а не как три."
На что был дан ответ! Причем в двух вариантах, 1-на клиенте (Просто Я © (27.04.04 22:32) [1] ) 2-SQL запросом.
В обоих случаях можно "извратиться" и нормально редактировать!
> sniknik © (28.04.04 13:05) [8]
Да, для ODBC DBF это не работает, хотя BDE "понимает" + и ||.
Transact-SQL Reference. Это, как я понимаю, MS SQL Server? А ODBC драйвера тоже MS"овские? Видать в MS принято так делать конкатенацию строк.
Ну да ладно, как уж у автора будет работать, так он и напишет!
← →
Соловьев © (2004-04-28 13:42) [11]
> В обоих случаях можно "извратиться" и нормально редактировать!
а сохранить?:)
← →
Val © (2004-04-28 13:46) [12]>sniknik © (28.04.04 13:05) [8]
> А в стандарте SQL как записано? ;-)
в каком?
ansi SQL, кажется, он же SQL"92.
← →
Deniz © (2004-04-28 13:54) [13]> Соловьев © (28.04.04 13:42) [11]
И сохранить. Для предупреждения сл-щих вопросов:
select name1, name2, name3, name1 || name2 || name3 fio from table
Показывать только fio а редактировать и сохранять name1, name2 и name3 (не в гриде) а отдельно
Знаю что это не правильно, в смысле сетевого трафика и т.д., но в теории возможно.
← →
Соловьев © (2004-04-28 13:56) [14]
> Deniz © (28.04.04 13:54) [13]
это понятно.
а вот в гриде как? Думаю автору как раз это и будет нужно :)
← →
Mim1 © (2004-04-28 16:30) [15]можно сделать calculated поле и вычислять кго на клиенте.
← →
paul_k © (2004-04-28 16:45) [16]2 Соловьев
в BeeforePost строчку разобрать по пробелам первые два слова соотвественно по полям а астаток в третье поле...
и, кстати, не уверен что запросselect name1+" "+name2+" "+name3 as supername
будет редактируемым
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.038 c