2010-03-24 5 views
1

c'est ce que je veux. mais j'ai mis seulement une date spécifiée.Comment obtenir uniquement la date à partir du serveur SQL

SELECT BookName, Author, BookPrice 
FROM Book 
WHERE Book.Book_ID = ( 
    SELECT Book_ID 
    FROM Temp_Order 
    WHERE Temp_Order.User_ID = 25 AND Temp_Order.OrderDate='3/24/2010' 
) 

c'est la fonction de date que j'ai utilisée. mais cela prend aussi du temps. comment l'arrêter. S'il vous plaît aidez-moi

SELECT Book_ID, BookName,Author,BookPrice 
FROM Book INNER JOIN FavCategory ON Book.Category_ID = FavCategory.Category_ID 
WHERE FavCategory.User_ID = " + useridlabel.Text + " AND 
     OrderDate = **GETDATE()** 
+2

Ceci ne répond pas directement à votre question, je vais donc l'ajouter en commentaire. Si vous utilisez SQL 2008, vous pouvez utiliser le nouveau type de données "Date" au lieu de DateTime pour le champ Date de commande. – JohnFx

Répondre

0

C'est une question classique pour les versions SQL Server antérieures 2008:

SELECT Book_ID, BookName,Author,BookPrice 
FROM Book INNER JOIN FavCategory ON Book.Category_ID = FavCategory.Category_ID 
WHERE FavCategory.User_ID = " + useridlabel.Text + " 
AND CONVERT(nvarchar, OrderDate, 111) = CONVERT(nvarchar, GETDATE(), 111) 

Selon le code (111) que vous mettez à la fin, vous pouvez formater la date de la zone où vous vous trouvez.

+0

merci beaucoup. Merci. – Nubkadiya

2
SELECT CONVERT (date, GETDATE()) 

MSDN

+0

merci pour le message rapide j'ai trouvé ce CONVERT (date, GETDATE()) mais ici ce qui est 'date'? est-ce le nom de la colonne. peut m'expliquer s'il vous plaît – Nubkadiya

+0

est un type de données qui vient avec Sql Server 2005 et au-dessus –

+0

SELECT BookName, Auteur, BookPrice FROM Livre où Book.Book_ID = (SELECT Book_ID de Temp_Order WHERE Temp_Order.User_ID = 25 ET Temp_Order.OrderDate = CONVERT (date, GETDATE())) Ceci est le msg i get Msg 243, niveau 16, état 1, ligne 1 La date de type n'est pas un type de système défini. – Nubkadiya

3

Celui-ci est pour Sql Server 2000:

SELECT CONVERT(DATETIME, FLOOR(CONVERT(FLOAT, GETDATE()))) 
0

Essayez:

OrderDate = CONVERT(varchar, GETDATE(), 101) 

Wich retourne la date au format mm/jj/aaaa, ou choisissez un con format de vérification de here.

+0

Salut les amis, Merci pour tous les commentaires. Y at-il de toute façon quand j'insère la date. sans envoyer le temps. seule la date sera enregistrée. même si je le fais, cela économisera 12h00. est-ce qu'il y a de toute façon pour ça? si je peux trouver que je peux résoudre mon problème aussi – Nubkadiya

+0

Non, vous devrez enregistrer la date et l'heure, car il n'y a pas de type de date. Vous devrez convertir toujours le datetime à ce jour en utilisant convert pour travailler avec lui comme s'il s'agissait d'une date. –

0
SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, GETDATE())) 
Questions connexes