多列转1列 SqlServer 实现oracle10g的 wmsys.wm
有这么一个表 create table tb(id int , value varchar ( 10 )) insert into tb values ( 1 , ' aa ' ) insert into tb values ( 1 , ' bb ' ) insert into tb values ( 2 , ' aaa ' ) insert into tb values ( 2 , ' bbb ' ) insert into tb values ( 2 , '
有这么一个表
<span>create</span> <span>table</span> tb(id <span>int</span>, value <span>varchar</span>(<span>10</span><span>)) </span><span>insert</span> <span>into</span> tb <span>values</span>(<span>1</span>, <span>'</span><span>aa</span><span>'</span><span>) </span><span>insert</span> <span>into</span> tb <span>values</span>(<span>1</span>, <span>'</span><span>bb</span><span>'</span><span>) </span><span>insert</span> <span>into</span> tb <span>values</span>(<span>2</span>, <span>'</span><span>aaa</span><span>'</span><span>) </span><span>insert</span> <span>into</span> tb <span>values</span>(<span>2</span>, <span>'</span><span>bbb</span><span>'</span><span>) </span><span>insert</span> <span>into</span> tb <span>values</span>(<span>2</span>, <span>'</span><span>ccc</span><span>'</span><span>) </span><span>insert</span> <span>into</span> tb <span>values</span>(<span>3</span>, <span>'</span><span>ddd</span><span>'</span><span>) </span><span>insert</span> <span>into</span> tb <span>values</span>(<span>3</span>, <span>'</span><span>fff</span><span>'</span>)

需求:把id为3所以数据转为1行。以|分隔
1.把id为3的数据转 xml
xml
select '|'+(value) from tb
where id=3
for xml path('')
效果
2. 去掉第一个 | 替换成空格
需要函数 Stuff,, 类似对字符串操作这样的函数还有 replace() right () left() substring() 看需求使用
STUFF 函数将字符串插入另一字符串。它在第一个字符串中从开始位置删除指定长度的字符;然后将第二个字符串插入第一个字符串的开始位置。
Transact-SQL 语法约定
语法
<span>STUFF</span> <strong>(</strong> <em>character_expression </em><strong>, </strong><em>start </em><strong>, </strong><em>length </em><strong>,</strong><em>character_expression </em><strong>)</strong> Copier après la connexion |
stuff((select '|'+(value) from tb
where id=3
for xml path('')),1,1,'')
这句无法单独运行
3.最终实现
<span>select</span> id ,value<span>=</span><span>stuff</span>((<span>select</span> <span>'</span><span>|</span><span>'</span><span>+</span>(value) <span>from</span><span> tb </span><span>where</span> id<span>=</span><span>3</span> <span>for</span> xml path(<span>''</span>)),<span>1</span>,<span>1</span>,<span>''</span>) <span>from</span> tb <span>where</span> id<span>=</span><span>3</span> <span>group</span> <span>by</span> id
ps:去掉一个where 得到的结果是不一样的,不懂为何。group by id 有去重的效果
效果图。没有------------
在oracle 数据库中他也有自己的实现。觉得这些东西没有什么的。只要你有需求,必然有答案,只是你接触了没有而已。反正现在编程我们都是站在巨人的肩膀上了。

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Les étapes d'importation sont les suivantes : Copiez le fichier MDF dans le répertoire de données de SQL Server (généralement C:\Program Files\Microsoft SQL Server\MSSQL\DATA). Dans SQL Server Management Studio (SSMS), ouvrez la base de données et sélectionnez Attacher. Cliquez sur le bouton Ajouter et sélectionnez le fichier MDF. Confirmez le nom de la base de données et cliquez sur le bouton OK.

Pour les objets du même nom qui existent déjà dans la base de données SQL Server, les étapes suivantes doivent être suivies : Confirmez le type d'objet (table, vue, procédure stockée). IF NOT EXISTS peut être utilisé pour ignorer la création si l'objet est vide. Si l'objet contient des données, utilisez un nom différent ou modifiez la structure. Utilisez DROP pour supprimer des objets existants (soyez prudent, sauvegarde recommandée). Vérifiez les modifications de schéma pour vous assurer qu'il n'y a aucune référence à des objets supprimés ou renommés.

Lorsque le service SQL Server ne parvient pas à démarrer, voici quelques étapes à résoudre : Consultez le journal des erreurs pour déterminer la cause première. Assurez-vous que le compte de service est autorisé à démarrer le service. Vérifiez si les services de dépendance sont en cours d'exécution. Désactivez le logiciel antivirus. Réparez l'installation de SQL Server. Si la réparation ne fonctionne pas, réinstallez SQL Server.

Pour afficher le numéro de port SQL Server : Ouvrez SSMS et connectez-vous au serveur. Recherchez le nom du serveur dans l'Explorateur d'objets, cliquez dessus avec le bouton droit et sélectionnez Propriétés. Dans l'onglet Connexion, affichez le champ Port TCP.

Si vous supprimez accidentellement une base de données SQL Server, vous pouvez suivre les étapes suivantes pour la récupérer : arrêter l'activité de la base de données ; sauvegarder les fichiers journaux ; vérifier les options de récupération : restaurer à partir d'une sauvegarde ; utiliser DBCC CHECKDB ; outils de fête. Veuillez sauvegarder régulièrement votre base de données et activer la journalisation des transactions pour éviter toute perte de données.

Les fichiers de base de données SQL Server sont généralement stockés à l'emplacement par défaut suivant : Windows : C:\Program Files\Microsoft SQL Server\MSSQL\DATALinux : /var/opt/mssql/data L'emplacement du fichier de base de données peut être personnalisé en modifiant le chemin du fichier de base de données. paramètre.

Comment mettre en œuvre la double connexion WeChat sur les téléphones mobiles Huawei ? Avec l’essor des réseaux sociaux, WeChat est devenu l’un des outils de communication indispensables dans la vie quotidienne des gens. Cependant, de nombreuses personnes peuvent rencontrer un problème : se connecter à plusieurs comptes WeChat en même temps sur le même téléphone mobile. Pour les utilisateurs de téléphones mobiles Huawei, il n'est pas difficile d'obtenir une double connexion WeChat. Cet article explique comment obtenir une double connexion WeChat sur les téléphones mobiles Huawei. Tout d'abord, le système EMUI fourni avec les téléphones mobiles Huawei offre une fonction très pratique : l'ouverture d'une double application. Grâce à la fonction de double ouverture de l'application, les utilisateurs peuvent simultanément

Si l'installation de SQL Server échoue, vous pouvez la nettoyer en suivant ces étapes : Désinstaller SQL Server Supprimer les clés de registre Supprimer les fichiers et dossiers Redémarrer l'ordinateur
